我对"大前端"的偏见

640?wx_fmt=jpeg

(题图:from  unsplash)

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

640?wx_fmt=png

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


独立的前端团队早已经不是什么新鲜事,在那些大厂大寨子里早已经存在,前端的发展可谓如日中天,一片从未有过的繁荣。前端三大件: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,让后端开发人员以更习惯的开发风格上手前端的开发,打破割裂的局面。

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

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

640?wx_fmt=png

扩展阅读:

640?wx_fmt=jpeg

长按2秒,识别二维码,关注我。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MavenTalk

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值