前端当前是否处在一个糟糕的时代?
现在前端领域一直在颠覆,推翻从来,我认为只有糟糕的东西才需要不停的推到重来。
还一个问题是我没看到一个新技术出现的必要性,比如各种状态管理。
这种颠覆性导致很难有稳定可靠的框架可以使用,需要成天面临着技术更迭。
关于这个问题我们应该从2个方面来看。从行业角度看,前端最糟糕的时期经过去了;从开发者度看,现在确实是个糟糕的时代。
首先从前端行业的发展历史来看,前端正在变得越来越成熟。如果和过去相比,之前的前端才是真的糟糕。如果我们从未来的视角来看现在,那么现在也算是糟糕的,但是其糟糕程度也远不如过十年前正处于前端的石器时代,那时的前端开发用一个词语来形容就是"刀耕火种".糟糕到什么程度呢?
●前端开发者的噩梦:兼容IE6. IE6发布于2001年,而ES5直到2009年才定稿。IE6除了可以运行JavaScript之外还可以运行VBScript. JScript ( -个Javascript的方言)。
●当时有一个只能运行于IE的技术叫"ActiveX" ,所以很多银行和政府的网站只能用IE浏览器打开,甚至只能使用IE的特定版本打开。
●还有一个技术是目前已经被淘汰的Flash.
我们现在所说的前端通:常这是包括了HTML、CSS. JS,甚至Node.js、SVG 等和Web UI层相关的开发技术。那么在没有ES6 ,没有HTML5 ,没有CSS3的时代,前端到底糟糕到什么程度呢?
糟糕到当时甚至没有'前端工程师"、、 前端开发者" 这个词,那时这个岗位被称为"切图师"、"切图仔".在大部分公司中, HTML和CSS都是由设计师来做,页面中动态效果比如鼠标划过显示菜单、轮播图等则是由后端开发者来完成。后端JSP、PHP开发者兼职写jQuery是当时的普遍现象。
我们再对比一下同时期的后端,各种工具链和技术都已经非常成熟了。那时的前端也只是作为了后端MVC架构中的View层,在没有前后端分离的时期, View层也是由前端和后端-起开发的。 现在我们开发前端项目都会涉及到打包、压缩、混淆等,而在之前虽然大型前端项目还是少数,当涉及到几百个js文件的时候,前端也会使用到打包、压缩、混淆等工具,而这些I具当时几乎都是由Java提供的,流行的有雅虎开发的YUI Compressor.谷歌开发的Google Closure Compiler.
前端经过这么多年的发展,尤其是Node.js发布到成熟的这几年,已经变得非常成熟,而"糟糕"的时代也E经成为了历史。
常言道"乱世造英雄",但是常言也道 "乱世埋枯骨" .在Node.js出现之后,前端可谓是当时最有"钱途"的行业之一。目前这个风口也应关闭了,所以对很多人来说,现在是一个糟糕的时代。
如果我们看一下大厂, 以阿里为例,基本上前端的那些高P都是在2010年之后搭着Node.js的快车-路升上来的。Node.js 不仅拓展了前端的边界,还提升了前端的研发效率。
我认为只有糟糕的东西才需要不停的推倒重来。
这句话我不认同,我觉得这句话的原因和结论都有问题。首先颠覆的不是前端,而是前端的某个技术和工具;再者并不是因为糟糕所以颠覆,而是因为前端具有生命力所以才有颠覆性的创新和改变。我们看看后端,以前Java开发都是用Eclipse ,而现在几乎清一色的IDEA ,那么我们是否能得出结论Java在不停的推到重来,所以后端处于-个糟糕的时代。显然不能。
工具的更新换代才能带来前端的繁荣。我们来讲一个真实的故事吧。
英国工业革命时期,机器生2逐渐替代手工劳动,导致大部分人失业、工资下跌。失业了就没事儿邗,于是他们开始思考思考:
我们为什么失业呢?因为工厂不需要这么多人。
厂为什么不需要这么多人呢?因为机器可以做很多事。
如果没有机器呢?那么工厂就多招人终于找到失业的原因了,于是莱斯特郡一 个名叫卢德的工 人第-一个捣毁织袜机,进而在全国掀起了砸毁机器的浪潮,无数工人涌入工厂将机器砸毁。2333333 ,这场运动被称为"卢德运动".而这次运动导致很多工厂被迫停工,加剧了更多工人的失业。最终英国政府制定律法,并对卢德分子进行镇压。
在故事中,"机器生产逐渐替代手工劳动" 是-次生产力的变革,作为类比,前端技术的更替也正生产力的变革,对比- -下React/Vue开发维护几万行代码的项目和用jQuery开发维护几万行代码的项目,哪个更容易。是技术上的差距吗,也不尽然,只要规划的合理, jQuery -样可以开发大型项目,但是由于ReactNue的出现使得大部分开发者不愿意再继续基于jQuery来开发-适用于大型项目的工具链了。
我之前是一名Java开发者, 直到Chrome、Node.js 发布后我对前端越来越感兴趣,后来转行称为前端开发者,我经历过前端最糟糕的时代一兼容 IE5.5 ,也搭着前端的快车实现了I资爆炸式增长。当我刚学会最流行的Prototype库时, jQuery出现了;当我刚学会Underscore后,Lodash出现了;当我庆幸自己没学Grunt而直接学了Gulp时, Webpack出现了。我大概在2015/2016年实现了自己的第一个目标:工资翻10倍。
不要疲于追求新的工具,给自己明确清晰的定位,然后去学习不同领域的相关知识。我入行前端以来就-直深耕前端工程化以及前端性能两个方向。而新工具新框架出现后,不应该仅仅停留在作为-个框架的使用者,而应该考虑框架为什么出现,解决了哪些痛点,如果没有XXX框架的出现我是否能解决类似的痛点总而言之,说的俗一点就是,目前前端处于糟糕的时代,是因为前端开发者的工资无法向之前一-样爆炸式增长了。但是前端开发者如何获得高薪呢,主要还是看综合能力,如何将自己的前端知识转化为生产力,在公司中,是做到了"为研发提效,为业务赋能", 还是仅仅只会某个框架的知识,天天写bug,找bug,改bug.
对一一些开发者来说感觉目前前端太糟糕,还有一一个原因就是 I具迭代太快,而又没有大牛来指导,面对众多的前端技术感到眼花缭乱,不知道如何学习,更不知道该学习什么。然而网上的知识点都比较零碎,不成体系,自己看书又缺乏实践,看了不少的知识但是在实际项目中却依然使用不到。
干了几年之后提升也不是很多,甚至遇到了职业的天花板。