前端所谓的全栈和大前端有什么区别?

所谓的全栈和大前端有什么区别?

大前端:

大前端都快被说烂了,然而还是有很多人不理解它具体是什么

那么,大前端的边界到底在哪里?

端上的开发,Web、移动端、PC 端,这些平台上的开发现在大家基本都认同是大前端的职责了,虽然在具体的工作中会按平台来划分。

工程化,提升工程效能,其中端上的工作也被认为是大前端的事情。

服务端的开发,Node 全栈,有人认为也是大前端,因为都是用的 JS 嘛。但我认为不是。因为这样的话,前后端的划分就没有意义了,全栈是全栈,前端是前端。那么,在服务端上,大前端可以做什么?

我认为这要看具体的系统架构,拿现在越来越流行的微服务架构来说,API 网关看似和前端有关,API 的内容是由前端的需求驱动而来,但分析网关需要做的事情,流控、鉴权、熔断、报文转换等等,完全是后端的职责。

但在 API 网关之外,SoundCloud 的 Phil Calçado 提出的 BFF 架构,其实是可以由前端来负责的,而且也刚好和平台、岗位对应起来,可以当做前端的自留地。在上面 SSR,或者像是由手 Q 开源的 VasSonic 框架里的代码 buffer 化这样的骚操作都可以实现。当然,这里一定会遇到高并发、高可用、性能的问题,是需要前端去拓展自己的地方。

前端所谓的全栈和大前端有什么区别?_第1张图片

最后,也是我在去年的基础上认知提升的一点,现在我不认为前端就是做泛GUI 的开发了。随着AI 越来越强大,语音交互越来越多,对话式交互设计的任务也落到前端头上来。就像玉伯在去年的SEE Conf 上提到的,前端是后端服务与人机界面的连接器,不管这个人机界面的介质是屏幕还是其它东西。

前端所谓的全栈和大前端有什么区别?_第2张图片

 

全栈:

数年以前,全栈工程师的理念忽然风靡墙内外,成为开发者们津津乐道的话题。数年过去,关于全栈工程师的争议不多了,教你速成全栈工程师的视频课程多了起来,说明大家对于这个理念慢慢接受了。但我发现,鼓吹前端往全栈转型做的有点走火入魔,有的说前端应该成为 K 型人才,甚至部分招聘前端工程师的要求都写着:熟悉后端至少一门语言和框架,熟悉数据库。

诚然,有了 Node,再加上 JavaScript 大杀四方,前端转型全栈的确是非常顺理成章,但各个语言在各自领域耕耘多年,别说取代,就连取得一席之地都非常难。如果不靠一门语言通打天下,去学习其它领域知识、熟悉领域整个技术生态依然是艰难而缓慢的过程,这难度不亚于转职为其它领域的程序员了。

所以,全栈虽好,也不能贪心啊。

不必神话全栈

时至今日,全栈工程师需要做到什么程度依然没有定论,但如果我们从一些全栈的课程、招聘需求去看,可以得出社会上对于全栈的一个朦胧的认知。

前端所谓的全栈和大前端有什么区别?_第3张图片

这是 YouTube 上的一个全栈教程,它教了什么呢?MongoDB、Express、Node、Angular。是的,就这些。

如果你觉得这些太简单,感觉很不现实,那我们来看看招聘方的需求:

 前端所谓的全栈和大前端有什么区别?_第4张图片

这是 ebay 的招聘要求,注意是招的 Senior,要求才这么高。

然后看看国内的。

 前端所谓的全栈和大前端有什么区别?_第5张图片

前端所谓的全栈和大前端有什么区别?_第6张图片 

从上面我们可以看到,对于全栈工程师,社会上的要求真的不高。就像某些人调侃的那样:会一门前端和一门后端就自称是全栈工程师了。没错,真的可以

为什么呢?随着现代大型互联网应用架构越趋复杂,一个人是很难同时精通很多领域的,但如果只是开发小型应用,应对不多的流量,借助开源软件和工具,一个人也可以办到,这是导致全栈工程师出现的根本原因。

全栈工程师从最开始就是为小型应用而诞生的,想让它解决一切只不过是幻想。

最后,其实进阶方向这个东西,其实很多时候没必要去提,因为学无止境,一旦选定了一个方向,深入下去自然知道还有什么需要学,有那么多需要探索的,哪有时间问这个呢?就像最近知乎上有人问学习 Node 一年多,到天花板怎样办,回答里指出,那哪里是天花板,那是地板啊!

谨以此文与前端人共勉。也希望借此抛砖引玉,欢迎更多的交流讨论。以上就是我的分享,希望对你有所帮助,另外我自己也从事前端开发多年,自己对于前端也做了一些学习的总结,也录制了基础的精讲视频和学习方法,如果你这边需要的话,可以点此链接:前端学习方法,资料视频,就业指导教程分享 另外如果对于学习前端还有什么问题(学习方法,学习效率,如何就业)可以私信我,随时为你解答

 

你可能感兴趣的:(前端所谓的全栈和大前端有什么区别?)