WEB前端是不是没有前景了?

标签: 技术成长, 知乎问答

保留所有版权,请引用而不是转载本文(原文地址 https://yeecode.top/blog/34/ )。

我最开始接触前端开发是在十年前,然后还带出了一个前端团队。

到现在,也一直关注前端的进展。

可即使这样,我也无法给出前景好坏的明确回答。也绝不能为了骗赞,乱答一个。

接下来我会从软件宏观发展前端自身发展两个角度分析前端的前景。具体结论,还希望读者自行总结。

当然,我会在最后给出一些建议。

还要说明一下,本回答说的前端是指大前端,不仅仅包括Web前端,也包括客户端、H5、几近消亡的Flash等等。它们只是所处的硬件载体不同。并且按照趋势,他们将来也会被统一起来,例如,现在HTML已经可以在大多数载体上运行。

软件宏观发展

同许多行业一样,软件行业的发展也在经历一个从功能到体验的过程。

早期的软件编程主要指完成功能,至于表现形式则并不重要。在那个时代中,命令行是最常见的交互形式,简单、明确。当然,主要是简单。

甚至,在二十年前,网游还是文字版本的呢。

“你对对方发起了普通攻击,对方血量-5%!”

结果那时照样玩的很嗨!

渐渐地,核心需求被满足了,软件开始面向大众。对于大众而已,复杂的功能他们感受不到,漂亮的界面他们却可以感受到。于是软件便开始追求体验,这是前端才诞生,并开始发展。

早期的界面也是丑的可怜,以表达信息为主。

图片

而后,早期的客户也被收割完毕。只有更好的体验才能吸引更多的用户,体验变得越来越重要,前端也变得越来越重要

美观上。从文字到图片到视频。

载体上。从电脑到手机,甚至到手表。

用户在哪里,界面就出现在哪里。

于是渐渐地,功能倒没那么重要,前端带来的体验才最重要。说个大家都知道的例子:

<a href="javascript: alert("缓存清除成功!")" >清空缓存</a>

要啥功能啊,只要用户觉着爽就好了!

而这个趋势,会一直发展下去。其实,我们近些年常提的供给侧改革也是由于这样的原因产生的。即随着行业的发展,其相关需求基本被满足后,行业的重心会从功能转为体验。这个过程中,得用户者得未来。

从软件宏观发展分析,前端就是软件系统最贴近用户的部分。大有未来!

前端自身发展

在09年左右,我刚开始做前端时,常戏称自己是“切图工”。很大一部分工作就是在切图……然后更大的工作比重在调试配。

IE6\IE7\IE8\搜狗浏览器\360浏览器\傲游浏览器……那是一个浏览器遍地开花的时代。每个浏览器对标准的支持不同,适配起来难度极大。尤其是IE6,经历过的前端们应该还能回想起那时的痛苦。

但是要说前端的自身发展,还要从更早说起。在JavaScript诞生的年代,那时,前端语言都没有统一。

所以,前端的发展本可以用下面的图表示。

图片

首先,实现规范的统一。这一点上,前端做的非常好,比后端好很多。

后端什么Restful、微服务之类,也都只是停留在概念层次,然后以尚不清晰的概念去指导后端发展。(你不信啊,随便拽几个后端的人出来,对这些概念,每个人都有每个人的理解,还特有理!)但是前段的主体可是W3C制定的准确的规范。

可见,W3C具有很强的掌控能力,也具有极佳的技术引导力。牛逼!

然后,就是框架的统一。本来,这一点可以在十年以内迅速完成,然后形成一套最为大众和成熟的框架。就像后端的Spring框架一样,慢慢地成为共识。

但是,还没来得及完成,就受到了硬件高速发展的冲击。成了下面的图。

图片

PC端、手机浏览器、Android客户端、IOS客户端……众多的客户端瞬间袭来,也在各自的领域孕育了自己的框架。然后,任何一个框架,可能在某些领域表现的好,在某些领域表现的不好……框架的优劣变得难以比较,统一的过程也便被拉长。

当然,框架的统一过程也在进行中,例如,ActionScript不就消失了么(心痛,我第一个学的语言实际是ActionScript),JQuery不也渐渐远去了么。现在,Angular\Vue\React等等众多框架开始争斗中,当然,也渐渐有了优劣之分(我不做一家之言的判断,留给大家自己判断)。重点,这就是现在的形势。

然后,在经过足够长的时间。前端的框架还是会统一起来。用一套框架编写各个端的界面,这绝对是趋势。例如,Electron就很好啊。

等框架统一结束后,也会有新的客户端类型产生。但是那时的新客户端也会使用统一后的规范和框架进行编程,毕竟开发者在那里。

一个框架,一份代码,多端运行,自然不需要太多的前端开发者。因此,从前端自身发展分析,前端会渐渐实现统一。这个过程中,需要的从业者是减少的。

总结

汇总一下上面的两点:

宏观和微观的结论是相悖的,所以,我不能给出确切的结论。接下来前端的从业者人数会怎样,会兴起还是衰落,很难说。

但是,我们现在处在框架争斗合并的过程中,可以得出几点建议:

最后,在前端框架迭起的现在。学习前端实属不易。

加油!

本文首发于个人知乎:易哥(https://www.zhihu.com/people/yeecode),欢迎关注。

作者书籍推荐