为什么最新的 JavaScript 框架都是浪费时间
如果你从事 Web 开发超过五分钟,你肯定知道这套路。每隔几个月,就会冒出一个新的 JavaScript 框架,声称要解决上一代框架的所有问题。
起初,这令人兴奋。更简洁的语法、更好的性能、更少的麻烦!但多年来在 React、Vue、Svelte 和 Solid(以及之后的回溯)之间辗转之后,我逐渐意识到,不断追逐最新的 JavaScript 框架是在浪费时间。
别误会我的意思——创新固然重要。但到了某个阶段,你必须扪心自问:我是在真正创造东西,还是只是不断地用略微不同的方式重新学习如何创造同样的东西?
JavaScript 炒作周期永不停歇
说实话,JavaScript 开发者对新鲜事物总是趋之若鹜。每年都会有新的框架、新的打包工具、新的元框架、新的状态管理方式涌现。这种循环大致如下:
- 有人宣布推出一款“颠覆性”框架。它比以往任何框架都更小、更快、更好。
- 开发者们蜂拥而至。博客、YouTube教程、会议演讲——每个人都在大力宣传它。
- 企业犹豫不决。推广速度缓慢,是因为他们有实际需要运行的生产应用程序。
- 最初的兴奋感逐渐消退。框架日趋成熟,变得更加复杂,并开始变得像它最初试图取代的东西一样。
- 对下一个热框架重复上述步骤。
还记得当初 Vue 被认为会取代 React 吗?Svelte 也被认为会彻底终结它们?现在我们又在用同样的语气谈论 Solid 和 Qwik 了。与此同时,React 和 Angular 依然屹立不倒,而 jQuery(没错,就是jQuery)仍然驱动着数量惊人的网站。
后来,我不得不问自己:“我每年更换框架究竟能获得什么? ”
重写所有内容并不会提高效率。
我喜欢尝试新技术。性能提升、更好的用户体验和更简洁的语法都让我兴奋不已。但切换框架是有代价的,它会降低你的开发速度。
每次我换用新的框架时,我都必须:
- 学习新的组件语法。
- (再次)解决状态管理问题。
- 阅读新文档并修复奇怪的极端情况。
- 说服我的团队(或者我自己),这件事真的值得。
而这一切又是为了什么呢?仅仅是为了构建和以前一样的用户界面组件、处理同样的API调用、管理同样的状态吗?
后来我意识到,我花在学习框架上的时间比实际构建东西的时间还要多。
“最佳框架”是个神话
开发者们喜欢争论哪个框架最好。但事实是,没有最好的框架——只有权衡取舍。
- React为你提供了一个庞大的生态系统,但也迫使你处理复杂的渲染模式。
- Vue直观易用,但与 Vuex、Pinia 及其构建工具结合使用时,会展现出一些固有的倾向。
- Svelte消除了样板代码,但却将你限制在其基于编译器的方法中。
- Solid提供了类似 React 的人体工程学设计,性能更佳,但生态系统不够成熟。
- Angular功能强大,但学习曲线陡峭。
每个框架都有其优点和缺点。一旦你切换框架,你只不过是用一套问题换了另一套问题而已。
React 和 Angular 仍然主导着就业市场
现实情况是,公司并不关心最新的JS框架。
如果你正在找工作,React 和 Angular 仍然是主流。Vue 也占有相当的份额。至于其他的?都属于小众领域。
初创公司可能会尝试使用 Svelte 或 Solid,但大多数生产应用程序不会仅仅因为 Twitter 上流行起某种新趋势就更换技术栈。
归根结底,公司需要的是稳定、易于维护的代码库。他们不会仅仅因为 Qwik 听起来很酷就用它重构一切。
框架并不能让你成为更优秀的开发者
我曾经一度认为,掌握每一个新的 JavaScript 框架就能让我成为更优秀的开发者。但事实是,在不同的框架之间切换,除了语法差异之外,几乎学不到任何东西。
究竟是什么让你成为一名更优秀的开发者?
- 深入理解 JavaScript 核心概念(异步、闭包、事件循环、原型)。
- 学习系统设计(如何构建可扩展的应用程序)。
- 编写可维护的代码(清晰的架构、测试、文档)。
- 跳出前端(API、数据库、云部署)的局限去思考。
优秀的开发者不是能够用 10 个框架重写待办事项应用程序的人,而是懂得如何设计出能够运行、可扩展且易于维护的软件的人——无论使用什么框架。
我的做法
我并不是说我以后永远不会再尝试新的框架。但我已经改变了我的方法:
✅坚持使用广泛采用的框架(例如 React、Vue、Angular)。✅仅在有真正理由
时才更换框架 ( 不要仅仅因为 Twitter 上有人这么说)。✅ 专注于核心编程技能,而不仅仅是语法差异。✅多做实事,少追逐潮流。
下次有新的JS框架发布时,我不会急于重写我的项目。相反,我会专注于发布产品、编写高质量的代码以及提高我的问题解决能力。
最后想说的话
框架会不断更迭,但真正重要的技能——解决问题的能力、架构设计能力和编写简洁代码的能力——却会伴随你一生。
如果你总是频繁更换 JavaScript 框架,不妨问问自己:“你真的在进步,还是只是在原地打转? ”
咱们聊聊吧——你还在追逐各种框架吗?还是也已经不再盲目跟风了?欢迎在下方留言!
文章来源:https://dev.to/holasoymalva/why-the-latest-javascript-frameworks-are-a-waste-of-time-52pc