关于前端变得多么令人困惑和难以承受的文章有很多(请参阅 JavaScript 框架 - 进入 2025 年的概述),我相信这与对前端的激励有很大关系。不同的各方,我讨论如何填补现有的漏洞,并创建一个更健康的生态系统。
开发人员的现实
当前端开发人员考虑不同的技术时,他们需要一种方法来说服利益相关者(包括业务人员和他们的开发同行),而做到这一点的唯一方法是构建事物并对其进行测量,从而证明其好处和效果管理期望。 (驱动因素可能是需要构建全新的东西,改进已经存在的东西,或者甚至可能只是证明不需要改变,并且在外部各方的情况下,通过替代方案无法获得任何好处正在给公司施加压力以考虑它。)
一个例子可能是正在考虑使用更多 React Server 组件的开发人员(重点不是 RSC 本身,也可以是其他东西、另一个框架或另一项技术)。他们需要调整其架构以包含服务器,采用新的编程模式,考虑使用这些新路由器和指令的文件组织,推理所有这些限制,教育人们所有这些,协调内部最佳实践和需求,与客户交谈并更新 SLA 和文档,...这一切都非常昂贵且风险很大,因此不能轻易做出决定。
(比较不同技术和进行架构迁移的艰苦且成本高昂的过程是全球很多团队正在经历的事情。想想有多少博客文章和视频是关于失败的承诺的一项技术(您不需要 Next.js – 为什么我们从 Next 迁移到 React 作为最新的技术之一)。)
然而,在开始构建 POC 后很快,开发人员意识到很多技术产品都是通过“相信我们,兄弟”的说法来宣传的。
框架厨房中出现的每一项新技术都讲述了一个伟大改进的故事,并通过相当可塑性的演示来展示它们。但现实往往要混乱得多,收益微乎其微,但实验和迁移成本却非常高。每个公司和每个团队面临的挑战是重新发明轮子,并想出方法来证明他们的特定案例确实有一些实用性。需要大量的资源和内部专业知识来全面、详尽地考虑和测试各种选项。
当一家公司将 Yet Another™ 功能宣传为“The Now Best Thing Ever™”(正如 Trust Me Bro™ 的声明所示),让开发人员购买该产品并投入使用时,前端生态系统的健康动态就会受到损害。努力迁移到上面,却发现,确实,难题很难解决,ROI也没有。随着时间的推移,多次这样被烧伤会导致怨恨、倦怠以及对未来风险的整体厌恶。
正在构建这些很酷的新技术的公司(它们真的很酷!)对人们感到不满感到惊讶,并且似乎不考虑这些努力所需的工作量以及可验证的讲述方式的不可访问性现实的期望可能是什么。这一切看上去都很不诚实。
我们认识到构建这些新技术的公司有责任证明他们的技术有效,不仅通过广告,而且还为开发人员提供工具来指导他们的决策并确认自己的利益.
工具
那么,这些工具实际上是什么样子的?
这些工具将持续报告开发人员关心的指标(可以客观衡量),与开发人员正在做出的更改进行整体组合和关联,以帮助他们了解权衡:
- 捆绑包大小(每页和共享捆绑包的详尽报告,深入了解延迟加载(交互时)和/或自动加载(服务工作人员、预加载和其他预热)的其他捆绑包)
- 网络指标(通过更多的序列化,很高兴知道客户端上的实际节省是多少,以及它如何影响服务器和客户端之间的通信)
- 时间分割和性能(包括服务器和客户端,例如渲染内容需要多长时间以及服务器与客户端上的内容量、网络延迟和传输等)
- 网络生命力(我们是否需要对网页的不同部分进行更细粒度的分割,以逐步加载和呈现?仅针对初始加载的一次性指标就足够了吗?)
- 整个项目级别的所有这些不同指标之间的趋势(随着时间的推移)和相关性(以便团队可以跟踪事情的进展情况,并避免因性能随着时间的推移而下降或引入边缘情况而感到不愉快的惊讶仅在某些地方和某些页面)
这里提到的事情是任何团队都会关心的同样的事情,但是获得这些见解的工具似乎很难设置并且令人费解,并且在处理表现得像黑色的框架时有时实际上是不可能的盒子。
激励措施
这种工具不一定需要由自己开发这些新技术的同一家公司提供,但也可以由不同的公司构建(可能已经有类似考虑的暗示?Evan You - Vue, Vite、VoidZero 和 JavaScript 工具的未来,否则我可能会误解 Evan 所说的内容)。然而,我相信构建一些新技术的同一家公司应该提供工具来验证其收益,因为激励措施在他们一边:
通过构建这样一个工具来透明地报告各种指标和各种实现之间的差异,构建新技术/框架的公司可以首先在内部验证进度和声明,并帮助自己了解权衡,然后优化正确的指标。通过这种方式,它可以使公司保持负责任和诚实。因此,整个改进反馈循环可以在内部发生,甚至在到达公众之前就可以发生。
到那时,公司也可以向公众提供这些相同的工具,从而避免任何虚假声明和失望的风险,并为每个人提供在自己的项目上简单地为自己验证事情的能力。反过来,这会产生更多的信任和感激。
构建技术的公司也最有能力为其构建工具 - 它最了解其 API 和功能,以及需要开放多少或多少才能使工具发挥作用(这是另一种方式以保持公司诚实和公平)。
最终,如果公司希望通过付费工具来扩展其业务模式,它可以这样做。 (目前,类似的方法通常通过与客户公司签订合同和直接参与来体现,但是,工具可以使整个事情更加自助,这可以使所有各方受益。)
结论
我们正处于一个技术竞争的时代,没有单一的最佳解决方案,而且越来越大的项目的架构迁移并不便宜。为了能够明智地做出决定和采取行动,需要一种更全面的工具和报告,能够持续指导和评估决策、变更和权衡,而不仅仅是在一切完成后进行报告。
构建这些新技术和框架的公司将从此类工具中受益最多,并且最有能力构建它。
以上是如何避免前端技术让我们感到不满的详细内容。更多信息请关注PHP中文网其他相关文章!

选择Python还是JavaScript应基于职业发展、学习曲线和生态系统:1)职业发展:Python适合数据科学和后端开发,JavaScript适合前端和全栈开发。2)学习曲线:Python语法简洁,适合初学者;JavaScript语法灵活。3)生态系统:Python有丰富的科学计算库,JavaScript有强大的前端框架。

JavaScript框架的强大之处在于简化开发、提升用户体验和应用性能。选择框架时应考虑:1.项目规模和复杂度,2.团队经验,3.生态系统和社区支持。

引言我知道你可能会觉得奇怪,JavaScript、C 和浏览器之间到底有什么关系?它们之间看似毫无关联,但实际上,它们在现代网络开发中扮演着非常重要的角色。今天我们就来深入探讨一下这三者之间的紧密联系。通过这篇文章,你将了解到JavaScript如何在浏览器中运行,C 在浏览器引擎中的作用,以及它们如何共同推动网页的渲染和交互。JavaScript与浏览器的关系我们都知道,JavaScript是前端开发的核心语言,它直接在浏览器中运行,让网页变得生动有趣。你是否曾经想过,为什么JavaScr

Node.js擅长于高效I/O,这在很大程度上要归功于流。 流媒体汇总处理数据,避免内存过载 - 大型文件,网络任务和实时应用程序的理想。将流与打字稿的类型安全结合起来创建POWE

Python和JavaScript在性能和效率方面的差异主要体现在:1)Python作为解释型语言,运行速度较慢,但开发效率高,适合快速原型开发;2)JavaScript在浏览器中受限于单线程,但在Node.js中可利用多线程和异步I/O提升性能,两者在实际项目中各有优势。

JavaScript起源于1995年,由布兰登·艾克创造,实现语言为C语言。1.C语言为JavaScript提供了高性能和系统级编程能力。2.JavaScript的内存管理和性能优化依赖于C语言。3.C语言的跨平台特性帮助JavaScript在不同操作系统上高效运行。

JavaScript在浏览器和Node.js环境中运行,依赖JavaScript引擎解析和执行代码。1)解析阶段生成抽象语法树(AST);2)编译阶段将AST转换为字节码或机器码;3)执行阶段执行编译后的代码。

Python和JavaScript的未来趋势包括:1.Python将巩固在科学计算和AI领域的地位,2.JavaScript将推动Web技术发展,3.跨平台开发将成为热门,4.性能优化将是重点。两者都将继续在各自领域扩展应用场景,并在性能上有更多突破。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

Dreamweaver Mac版
视觉化网页开发工具

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)