学前端三年,我终于不再焦虑了
刚入行那会儿,我像个无头苍蝇。
今天看群里说React 18出了新特性,赶紧去学;明天刷到视频讲Vue3的组合式API真香,又切过去研究;后天大佬发文说Svelte才是未来,直接怀疑人生。GitHub trending每天刷三遍,生怕错过哪个新星框架,一夜之间就被行业淘汰。
那时候的我,不是在学前端,是在被前端追着跑。
每天焦虑到凌晨两点,书买了一大摞,课程囤了几百个G,真正消化吸收的却没多少。面试的时候聊框架头头是道,一问JavaScript原型链、闭包、事件循环就开始支支吾吾。说白了,我是在用战术上的勤奋,掩盖战略上的懒惰。
转折发生在一个加班的深夜。
项目遇到一个性能问题,页面渲染明显卡顿,我尝试了各种框架层面的优化手段都不奏效。最后mentor过来,打开Chrome DevTools的Performance面板,指着火焰图说:"你看,这里layout thrashing了,跟框架没关系,是你循环里频繁读写DOM geometry导致的。"
那一刻我如梦初醒。
React、Vue、Angular再怎么封装,底层跑的还是JavaScript,渲染的还是DOM,传输的还是HTTP协议。 这些底层的东西才是真正的不动产,框架只是盖在上面的精装修。装修风格可以一年换一次,但地基打不好,装修再漂亮楼也得塌。
从那以后我调整了学习策略:
花两个月系统过了一遍《JavaScript高级程序设计》,每一章都动手写demo
把浏览器的工作原理捋了一遍,从输入URL到页面呈现的完整过程
学了HTTP/HTTPS、TCP/IP的基本原理,至少知道三次握手和四次挥手
深入了解Event Loop、微任务宏任务、垃圾回收机制
说真的,学完这些再去用框架,感觉完全不一样了。
以前看文档是在背API,现在看文档是在理解设计思路;以前遇到Bug只能去搜索引擎复制粘贴,现在自己能顺着调用栈一步步推演问题出在哪。
框架是别人的,底层能力才是自己的。
现在技术圈依然热闹,新东西依然层出不穷,但我已经不再恐慌了。因为我知道,只要底层够扎实,任何新框架都只是一套新的API和设计范式,花一两周就能上手。
慢,就是快。深耕,才是最好的捷径。

