slot deposit pulsa slot mahjong slot gacor slot gacor slot gacor resmi slot gacor 2025 slot gacor terpercaya slot gacor 2025 slot gacor hari ini slot gacor hari ini slot gacor hari ini
开发者 “痛斥” JavaScript 框架是 “复杂性的制造者”
17611538698
webmaster@21cto.com

开发者 “痛斥” JavaScript 框架是 “复杂性的制造者”

前端 0 1170 2024-08-30 12:32:04

图片

导读:两名资深前端工程师 Pieter Levels 和 Alex Russell 反对使用复杂的 JavaScript 框架时,也许前端开发人员应该听听他们的意见。

对 JavaScript 框架的“抵抗运动”仍在继续。

在最新的 Lex Fridman 的开发者互动采访中,AI 应用程序开发人员 Pieter Levels 这样说,他使用原始 HTML、PHP、通过 jQuery 和 SQLite 的少量 JavaScript 构建所有应用程序。

也就是:没有用到花哨的 JavaScript 框架,没有现代编程语言,也没有 Wasm。

Levels 谈到 PHP 时表示:

“我现在看到了PHP复兴的迹象。人们已经厌倦了框架。所有的 JavaScript 框架都太……你怎么称呼它呢,就像 wieldy。维护这些代码需要做很多工作,然后更新到新版本,你需要变更很多。而 PHP 则保持不变,并且能够正常工作。”

Levels 在他 的X 平台简介中列出了七家不同的初创公司,并在自己的一个网站上给出了这样的建议:“尽早启动并多次启动。”换句话说,他是一个有进取心的人,喜欢快速构建 — — 这意味着要避开复杂的Web框架。

其他知名开发者也在社交媒体上表达了与 Levels 相同的观点。

“复杂性开发者会试图说服你,如今你什么都做不了,” Ruby on Rails 的创始人David Heinemeier Hansson (DHH) 写道。“你不能进行身份验证,不能进行扩展,不能运行数据库,不能将计算机连接到互联网。你是一个无助的小工,应该购买他们的产品。不。拒绝。”

有些人甚至对旧版 JavaScript 的迁移表示遗憾。

“2012 年将我的主要网站从 PHP 迁移出来,是我职业生涯中犯下的最严重错误之一,”Web开发培训公司 Frontend Masters 的创始人兼首席执行官Marc Grabanski 如此说道。

时我有一个普通的 PHP 网站,每月有超过一百万的独立访问量,而迁移到更新的编程语言和框架后,却扼杀了所有发展势头,最终导致网站倒闭。

他补充说,他的观点与 PHP 无关。“如果你有一个使用简单代码的项目,不要为了追逐热门而过度设计它。保持简单,不惜一切代价保护你在项目上的势头。

当然,“保持简单”的口号在计算机专业领域并不鲜见。

苹果创始人史蒂夫·乔布斯曾在1998 年的一次采访中说过这样的话:

“简单可能比复杂更难:你必须努力理清思路,才能让事情变得简单。但最终这是值得的,因为一旦你做到了,你就能移山倒海。”

复杂程度的另一端


真正有趣的是,简单哲学不仅在 Pieter Levels 所代表的“忙碌文化”创业圈中卷土重来,而且在Web开发的专业软件工程圈中也会卷土重来。


我想不出还有哪两位开发者比 Pieter Levels(PHP 拥护者与创业者)和 Alex Russell(微软浏览器工程师,也是 Web 开发领域最受尊敬的人物之一)更不同。


尽管他们的观点不同,但他们目前都反对复杂的 Web 框架。


在最近的一系列博客文章中,Russell 发起了一项个人调查,调查“JavaScript 优先的前端文化及其如何破坏国家公共服务”。

Russell 在对BenefitsCal 的调查中,清楚地说明了在公共服务网站中使用大量 JavaScript 的弊端,他将 BenefitsCal 描述为“加利福尼亚州最近为需要获得 SNAP 福利(即“食品券”)的家庭开发的门户网站”。


人们使用 WebPageTest.org 和 Google 的 Core Web Vitals 等网络性能工具,Russell 发现 BenefitsCal 充斥着 JS脚本,加载速度极慢:


“第一个问题是,该网站依赖 25 兆字节的 JavaScript(未经压缩,在线传输时为 17.4 MB),并在向用户呈现任何内容之前加载所有内容。即使服务良好,这对许多人来说也会慢得无法使用。连接比此处模拟的 P75 基线更差的用户会经历极其漫长的等待时间。这么多脚本增加了低端设备上标签崩溃的可能性。


在本系列的第四部分,Russell 提出了一些解决方案。


除其他事项外,他建议阅读英国的渐进式增强标准。它是英国政府官方网站 gov.uk 的“服务手册”的一部分。


Russell 链接到的页面开头是:


“渐进式增强是构建网站和应用程序的一种方式。它基于这样的理念:你应该首先使用 HTML 来制作页面,然后再添加其他内容,例如层叠样式表 (CSS) 和 JavaScript。


对 JS 框架说“不”


不可否认的是,使用 PHP 和 jQuery 快速开发 Web 应用程序与用渐进式增强理念实现符合 Web 标准的 Web 应用程序之间存在很大差异。前者主要关注实现快速开发和“最小可行产品”——最有可能面向拥有昂贵设备(如 iPhone)的用户——并能尽快推出。


后者主要关注为未来开发奠定坚实的基础,并尽可能扩大用户群(实际上,这包括那些没有 iPhone 的用户)。


无论如何,JavaScript 框架对于他们想要实现的目标来说都是一种“诅咒”。Pieter Levels 在创建他的许多应用程序时会避开它们,而 Alex Russell 则在努力说服公共服务网站采用更好的开发实践做法。


是的,最后的潮流都会转向不复杂的Web框架。

作者:万能的大雄

评论