浅谈前端的变与不变

觉得之前的想法还挺有意思的，决定润色润色放进博客里水一篇。这个标题听着好唬人，其实各行各业都适用。

前阵子看到有人讨论 “如何系统性地学习前端”，提到很多前端架构层面的东西多年未变，更应该关注整体架构设计和代码复杂度的控制。

我很赞同这个说法，不过我也想补充几点。前端其实是个非常宽泛的领域，细分下去有 toC 前端、toB 前端、基建前端、WebGL 前端等等。想要系统学习，首先得明确方向：是专注用户体验，还是深耕业务逻辑，或是投入工具链开发？不同方向要深耕的内容截然不同。

此外，前端并不是一成不变的。用户也不只有企业系统的用户，还有很多专注于创意表达、视觉展示的类型。游戏前端是前端，未来的 VR/XR 页面也是前端，浏览器插件 / 小程序开发是前端，Node 开发也算前端 —— 甚至再泛化一点，跨端开发也未尝不是前端的一种延伸。

以一个 toC 前端的视角给建议的话，前端动画、CSS、Three、交互表现、性能优化、SEO…… 每块背后都是一整个知识体系，往深里去挖是学不完的。而技术选型，往往得跟着业务需求走，并没有一套通吃的 “最佳实践”。

另一方面，前端技术本身也在持续的” 变 “。就拿 CSS 来说，这些年一直在努力干掉预处理器等变得更好用：原生嵌套语法、@if 函数、锚点定位、容器查询、shape() 函数…… 很多我们曾经要靠预处理器或 Hack 方式实现的，现在都渐渐标准化了。浏览器兼容性也在稳步提升，连 Safari 都在努力跟上 —— 比如 WebGPU 在 iOS 26 中终于要得到支持了（虽然我平时也没少吐槽 Safari，但能看到更多特性被支持、渐进增强变得更可行，确实是好事）。

虽然前端至今仍有很多历史遗留问题都很糟糕，但我们也该看到它正在变好。如果你对这个话题感兴趣，推荐之前读到的一篇很棒的文章：HTML is Dead, Long Live HTML，很深刻。

那么以我之见，前端的 “变”，更多体现在外在技术形态的快速迭代 ——CSS 标准不断更新、构建工具推陈出新、框架生态此起彼伏。今天流行 Webpack，明天可能就换 Vite；才刚理解 Vue 2，Vue 3 的 Composition API 又成了主流。这种变化是表层的、工具性的，也恰恰是前端最容易被别人看到最容易吐槽的。

而 “不变” 的，是底层的问题和核心设计思想：如何管理状态、如何分解组件、如何优化渲染效率、如何实现可维护的代码结构、如何保障用户体验的一致性。这些命题从早期的 jQuery 时代到如今的 React、Solid.js，从未消失，只是在不同的技术范式下以不同的语法和架构重现，任何语言。

我认为前端的发展，本质上是一场 “表达方式的演进”，而不是 “问题的替换”。

因此学好前端，并不是盲目追逐每一个新工具或框架，而是要在变化中识别出那些持久不变的原则 —— 理解它们，才能真正建立起属于自己的、可迁移的技术能力。

最后想说的是，前端远不止是 “熟练度” 的竞赛。它既有界面的表象，也有工程的深度；既要应对交互的细节，也要把握架构的稳定。写一个动画，可以只是 setInterval，也可以深入到渲染原理、性能层级与视觉算法。选择 “如何做”，本身就是一个技术判断和架构思考的过程。

任何一门手艺，重复和积累是基础。但如果你认为前端仅仅停留在 “切页面、调样式、写交互”，那真的太小看这个领域了。

所谓 “没有技术含量”，或许只是因为还没走到真正复杂的问题面前。

写到这儿发现其实好像适用于任何方向，哈哈哈哈。

偶尔也会想，前端真正的魅力，可能恰恰在于它离 “表达” 那么近。

看多了海外那些小而美的网站，真的有点羡慕 —— 一张专辑、一位画师、一项公益倡议、一家街角酒店、甚至一款本地食品，都有人愿意为之精心制作一个独具风格的小网站。它们不一定复杂，却充满个性，带着创作者的温度与巧思。

这种 “什么都能出个小网站展示” 的文化，让人想起 Web 最初的样子，一直有人骂，一直有人爱。前端不仅是实现需求的工具，也可以成为创意表达的画布。

也许这正是前端技术一直吸引人的一点：它始终承载着人们对美的追求、对创意的表达，以及对每一个想法都值得被好好呈现的信念。