前端地位Up!
背景
大家好,我是一名前端,我有一天做了一个梦,梦见前端供不应求、梦见大家看到前端就想说:卧槽这个人是前端真牛逼、梦见Javascript突破瓶颈吊打Rust、C...
然后梦醒了,是沉溺于框架、是中台的表格的增删改查、是层出不穷的无效轮子和集成、是无趣的各种小白进阶培训班、是业务形态的致命一击。最终是前端在技术圈子里不如狗的地位。
何至于此?
框架-砒霜or蜜糖?
说说框架
前段跟一个google的算法大佬聊天,他说你们前端很奇怪,现在浏览器已经非常快了,但你们非要搞这样那样的框架,然后去算这个算那个,搞些hooks虚拟dom
,完全看不懂在干嘛。
也许我想他说的是对于web
的性能层面是对的。
首先虚拟dom也就是中间层如果纯论性能
在我看来其实是并不适合现在的时代的,它在这个时代的作用就是作为多端统一以及在真实dom操作
前的数据缓冲/计算层...这可能也是这个时代出现了Svelte
和Solid
为代表的此类框架的原因。我倒是希望现在web
前端的方向能走向Solid
或Svelte
这种框架的周边社区完善开发。
可是时代的潮流不会随着个人的意志改变,果然时代是分分合合
吗,现在ssr
为代表的next
越来越火(可能有一部分vecel
的商业原因),但更重要的一个原因是去改善开发人员的体验
(在多端和最佳实践方面),也就是卷颗粒度
。
以next举例子:我对于next
其实是这么理解的,粗颗粒度
的react
在csr
已经进无可进了,改也不好改,那么转化一下方向把,在ssr
的领域去降低粒度
,就像流式渲染
等。
说说人
啊真糟糕,怎么情不自禁就在说框架
了,是不是发现我们前端情不自禁在开发
or说某个技术
的时候就会与框架
挂钩。就像是面试我懂某个框架
的原理、我学了几个框架
诸如此类的,于是我们就从一个框架到另外个框架反反复复的在路上走、打包工具
也是一样的(我真的需要这么快的打包工具吗?)。
于是我们就在框架中沉溺了,也许后面会出现一些5年vue工程师
,10年react工程师
,我们整日沉浸在框架之中,日复一日,用着固定的写法(其实我在说Vue,React在这方面会好一些),做着相似的事情,技术的成长变为了我某个框架用得怎么样。
前端工程师or框架工程师
我想啊,前端的潮流
很快(娱乐圈),但其实我们要明白一个道理,我用这个东西学这个东西对我有没有收益,对用户体验是不是有很大的提升,对团队开发有没有效率的进步。如果没有的话,不如搞浏览器
,当然也可以学学当个PPT天才
(纯褒义)或者业务
、算法、其他语言等(好堕落啊现在不是PPT就是搞业务),着实没必要把绝大多数时间留着框架上,看多了就会觉得自己很牛逼,然后开摆。
毕竟我们不是框架开发工程师(也就是资源型工具人)、我们是前端开发工程师,我们是面向屏幕
开发,我们是人机交互工程师
,也就是现在的一个词终端工程师
,如果你不能把你的应用在所有屏幕
(安卓、Ios、桌面、PC、平板)跑那应该是不合格的。
业务形态
害,说这个之前闲聊一下,我们可以看到一些产品诸如语雀
、云凤蝶
、Antd
等。蚂蚁体验技术部真的把前端的地位上拉了一截,他们真的很好,可能是未来5年在国内都不会再有这么好的标志性的前端产品,可惜没有一个闭环的商业业务形态,就类似next
这种,我在这里不讨论具体的一些原因和后面发生的一些事情。
进入正文,产品和业务形态
决定了前端的地位,后端开发通常被认为是应用程序的基础和核心
。但其实怎么说那,有的时候其实是因为国内产品思维的局限
于和上文提到的沉溺于框架和搜索工具
。
因为我做过不少国外的产品,有一些很有创造力和创新思维的产品会提出很多天马行空
,极具艺术
的产品交互效果和体验
,在这类产品中其实前端的地位并不算低。
但是在国内就会有这种情况:
- 产品不会有这种想法,他的脑子里也是一些国内的那些很普通的竞品,和
数据流转逻辑
。 - 前端自己拒绝,一般来说心路历程是这样的,我先看看
能不能做
=> 去百度掘金
搜索 =>搜不到
或者框架
里没有,好感觉不好做,太复杂了 => 我们换一个普通一点的效果(理由五花八门)。 - 大家都是这么做的,那我们这个也这么做吧。
但其实我们自己作为科技触达用户的桥梁
,是有能力去推动这个事情的,一个炫酷的配色、合理的交互效果、好看的页面,是可以去给产品去给设计说的,比如我自己有时候会figma
或者lottie
去自己画一些图和动画效果,去主动纠正设计的颜色和间距。难道产品会拒绝让产品变得更好?设计会拒绝更好看?
说白了,自己不想去做
,不想去推
,不会也不想学
,觉得很复杂
,当然如果实在没有这个土壤果断跑路。
Javascript本身的问题
Javascript
吊打Rust
和C
估计我是这辈子都看不到了。
Javascript
是解释性语言肯定没法跟一些编译语言竞天生就不行,再加上单线程
即使有解决方案也就那样。这意味着前端掌握更多语言几乎是一个必要的事情,Java
、Swift
,Oc
这些本来就会用到的不必多说,Rust
和Python
选一门掌握也很好。
会得越多你越强,当然我还是建议大家去当PPT天才
。
前端自信
以后,大伙自信一点,别觉得前端就不如其他技术岗位,地位都是自己争取的,前端优势很大,语言统一
、前端立马可见
的效果、前端基建相对较小
、前端宿主环境统一
、Docker和容器配置
相对统一等。主要是时间,有更多的时间意味着可以做更多的事学更多的东西更多的钱~。
总结
So,改变前端环境从你我做起,你卷一波我卷一波,前端的门槛就提起来了,以后面试的基本要求就是:前端
要会Js、Ts、Java、Swift、混合框架、PWA
,然后薪资30k
起步。
来源:juejin.cn/post/7283642910301192244