百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程字典 > 正文

我对“大前端”的偏见

toyiye 2024-06-06 22:12 11 浏览 0 评论


(题图:from unsplash)

摸索前端工程化时,针对群友作了个简单的问卷,参与人数不多,但也能表征一部分现象,统计结果如下,从中也可见些许端倪。


写这篇也是忐忐忑忑,一个后端聊前端的话题,总显得那么不专业,见识所限,仅供参考。此文的来由也是由前篇文章引申出来的,详见前端工程化的个人思考+前端工程化的个人思考-续。


独立的前端团队早已经不是什么新鲜事,在那些大厂大寨子里早已经存在,前端的发展可谓如日中天,一片从未有过的繁荣。前端三大件:HTML,CSS,JavaScript,这几年都有质的飞跃。HTML5的兼容性提升,多媒体支持,表单验证等等。CSS开发中加入的编程能力,JS领域内各种场景下基于Node的大规模应用,各种框架的推陈出新......

前端技术的融合更加紧密,应用的领域也更加广泛,大前端时代,也可以称为泛GUI时代,人机交互时代。前端领域的内容呈现多样化,手机App开发,考虑到生态的不同,还会涉及到Android、iOS、WP等,电视App应用,桌面端开发,微信公众号,微信/支付宝的小程序,数据展现(各种图表),虚拟现实增强现实(VR,AR),JS已成为IoT开发的四大语言之一,区块链智能合约的开发中也有JS的身影,人工智能中前端开发也起着举足轻重的作用,诸如此类。

举两个不常见的栗子:d3.js可以呈现更复杂更多样的图形展现,ar.js可以实现360度环绕透视、路径导航。

React Native早已渗透到Android、iOS的原生开发,效果效率都很接近,更关键的的多终端适配、升级更简单。Weex等一大批UI框架的出现使的前端开发开发更规范统一的界面变的轻松容易。

掌握单一的技术栈,在一个大前端团队中似乎不足以立足,这也对当下的前端人员有了更高的要求。前后端分离,使前、后的耦合性大大降低,具体体现在设计、开发、测试、发布、维护各个领域,都可以脱离后端独立进行,职则更加清晰明了。举个栗子,后端可以提供细粒度的服务,而不提供聚合服务,这个聚合服务可以有前端开发承担,在展现和后台服务中间增加一层完成,也就是常说的BFF,全称是Backends For Frontends(服务于前端的后端),当然BFF的场景还不止于此,在面对的多终端的数据展现方面,也可以提供类似于API GATEWAY的功效。有兴趣的朋友可以再深入下BFF。

Node的出现,再加上后端存储易于使用的Mongodb等NOSQL数据库,在某些项目中,确实不需要后端人员(服务端语言开发者,如C#,Java等)就可以完成,比如MEAN框架组合,一度有种声音:前端已无所不能。当然,这只是一厢情愿的想法,软件也远非这么简单就能解决问题,很多复杂的场景下它是应付不来的,每一种语言都有自己的局限性,这是我们应当看到的,陷入语言之争毫无意义。

说了这么多,大前端的”大”,具体体现在什么地方?面向终端更多,承担的任务更多,功能更强大更复杂,技术形态更多,更趋向于工程化自动化,与后端解耦独立开发测试。类JavasScript语言的应用,如TypeScript,CoffeeScript,让后端开发人员以更习惯的开发风格上手前端的开发,打破割裂的局面。

前端开发已经有自己的一套工程化思路,且与后台工程化不相耦合。前端生态也更加繁荣,后端工程化相对发展略为成熟。大前端,小前台,大中后台,目标都是应对更复杂的软件应用,更好的服务于软件开发者、软件应用者,提高效率,降低成本,提升体验。

融合是趋势,即便分工越来越细,但对外的服务能力是统一的,集大成者才能走的更远,你说呢?

扩展阅读:

  • 学习新技术时你应当掌握的『最少必要知识』
  • 基于SpringCloud的Microservices架构实战案例
  • 基于SpringCloud的某支付产品微服务构架拆解
  • 如何从传统软件开发顺利过渡到互联网技术开发
  • 那些会阻碍程序员成长的细节[7]
  • 野蛮生长的前端,从杂牌军到正规军
  • 前端工程化的个人思考
  • 前端工程化的个人思考-续

相关推荐

为何越来越多的编程语言使用JSON(为什么编程)

JSON是JavascriptObjectNotation的缩写,意思是Javascript对象表示法,是一种易于人类阅读和对编程友好的文本数据传递方法,是JavaScript语言规范定义的一个子...

何时在数据库中使用 JSON(数据库用json格式存储)

在本文中,您将了解何时应考虑将JSON数据类型添加到表中以及何时应避免使用它们。每天?分享?最新?软件?开发?,Devops,敏捷?,测试?以及?项目?管理?最新?,最热门?的?文章?,每天?花?...

MySQL 从零开始:05 数据类型(mysql数据类型有哪些,并举例)

前面的讲解中已经接触到了表的创建,表的创建是对字段的声明,比如:上述语句声明了字段的名称、类型、所占空间、默认值和是否可以为空等信息。其中的int、varchar、char和decimal都...

JSON对象花样进阶(json格式对象)

一、引言在现代Web开发中,JSON(JavaScriptObjectNotation)已经成为数据交换的标准格式。无论是从前端向后端发送数据,还是从后端接收数据,JSON都是不可或缺的一部分。...

深入理解 JSON 和 Form-data(json和formdata提交区别)

在讨论现代网络开发与API设计的语境下,理解客户端和服务器间如何有效且可靠地交换数据变得尤为关键。这里,特别值得关注的是两种主流数据格式:...

JSON 语法(json 语法 priority)

JSON语法是JavaScript语法的子集。JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔花括号保存对象方括号保存数组JS...

JSON语法详解(json的语法规则)

JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔大括号保存对象中括号保存数组注意:json的key是字符串,且必须是双引号,不能是单引号...

MySQL JSON数据类型操作(mysql的json)

概述mysql自5.7.8版本开始,就支持了json结构的数据存储和查询,这表明了mysql也在不断的学习和增加nosql数据库的有点。但mysql毕竟是关系型数据库,在处理json这种非结构化的数据...

JSON的数据模式(json数据格式示例)

像XML模式一样,JSON数据格式也有Schema,这是一个基于JSON格式的规范。JSON模式也以JSON格式编写。它用于验证JSON数据。JSON模式示例以下代码显示了基本的JSON模式。{"...

前端学习——JSON格式详解(后端json格式)

JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScriptProgrammingLa...

什么是 JSON:详解 JSON 及其优势(什么叫json)

现在程序员还有谁不知道JSON吗?无论对于前端还是后端,JSON都是一种常见的数据格式。那么JSON到底是什么呢?JSON的定义...

PostgreSQL JSON 类型:处理结构化数据

PostgreSQL提供JSON类型,以存储结构化数据。JSON是一种开放的数据格式,可用于存储各种类型的值。什么是JSON类型?JSON类型表示JSON(JavaScriptO...

JavaScript:JSON、三种包装类(javascript 包)

JOSN:我们希望可以将一个对象在不同的语言中进行传递,以达到通信的目的,最佳方式就是将一个对象转换为字符串的形式JSON(JavaScriptObjectNotation)-JS的对象表示法...

Python数据分析 只要1分钟 教你玩转JSON 全程干货

Json简介:Json,全名JavaScriptObjectNotation,JSON(JavaScriptObjectNotation(记号、标记))是一种轻量级的数据交换格式。它基于J...

比较一下JSON与XML两种数据格式?(json和xml哪个好)

JSON(JavaScriptObjectNotation)和XML(eXtensibleMarkupLanguage)是在日常开发中比较常用的两种数据格式,它们主要的作用就是用来进行数据的传...

取消回复欢迎 发表评论:

请填写验证码