0

0

一个新视角:前端框架们都卷错方向了?

星夢妙者

星夢妙者

发布时间:2025-07-04 08:20:12

|

277人浏览过

|

来源于php中文网

原创

大家好,我是卡颂。

近年来,前端领域涌现了许多新框架,如SvelteSolid.jsAstroQwik等。伴随这些框架的出现,还出现了许多高端的新概念,如「运行时/编译时框架」、「Islands架构」、「Selective Hydration」等。这些概念的核心目标是「通过各种方式,让页面加载和响应更快」。

这里的「快」主要体现在两个方面:

  1. HTML加载更快(与SSR相关的概念,如「Islands架构」);
  2. 更快响应用户交互(采用「细粒度更新」的框架,如VueSolid.js)。

然而,「快」是否是评判Web未来发展方向的唯一标准呢?

一位拥有32年开发经验的老程序员在他的博文《get-in-zoomer-we-re-saving-react》中提出了不同的观点。本文是对该博文的部分解读。

立即学习前端免费学习笔记(深入)”;

对于应用来说,什么才是重要的?当前前端框架的新特性主要关注「通过各种方式,让页面更快」。这里的主语是「页面」而不是「应用」。事实上,虽然开发者经常谈论Web App,但大部分开发者开发的,只能称为页面。

页面与应用的一大差别在于「交互体验的差异」。如果一个页面的某些交互类似于IOS原生应用,我们会说这个页面的交互体验非常出色。因此,虽然「速度快」是交互体验的重要一环,但绝不是全部,还有许多细节值得考虑。

以业界用户体验的标杆Mac OS为例:

Mac OS中,打开应用的状态栏时,按住「command + option」等快捷键可以开启进阶功能:

一个新视角:前端框架们都卷错方向了?按住command + option前

一个新视角:前端框架们都卷错方向了?按住command + option后

撤回(command + z)操作的结果对各种操作目标都是符合预期的(不管目标是文本还是文件等)。富文本内容的复制、粘贴与通过拖拽的表现一致。这些「符合预期」的细节背后,是一套「响应式系统」。

Draft&Goal-Detector
Draft&Goal-Detector

检测文本是由 AI 还是人类编写的

下载

Mac OS X是第一款声称自己为「响应式」的操作系统。在此之前,业界的效仿对象是Windows操作系统。在Windows中,数据是「非响应式」的。除非开发者手动刷新或轮询更新,否则获取的数据不会自动更新。这种底层模式对上层应用的操作会有直观的影响。

例如,下面是Windows 95中改变桌面外观的配置项,用户改变配置后,只有在点击「OK」或「Apply」后,才能看到「改变配置后的效果」。

一个新视角:前端框架们都卷错方向了?这一情况类似于前端框架普及前,开发者手动操作DOM的情况。

相比之下,Mac OS X采用响应式更新,用户在Mac OS中改变许多配置项后能够立刻看到效果。这类似于开发者使用前端框架后,「状态变化」能够自动触发「视图更新」。

操作系统的演进对前端框架的发展具有借鉴意义。正如上面所说,Mac OS X的发展方向是「为了更好的用户体验,打磨各种细节」,而前端框架的发展方向是「更快」。

前端框架走歪了吗?「React 并发特性」应该是今年前端领域比较热门的话题。然而,从社区关于「并发特性」的文章来看,相比于「使用并发特性并从中获益」,更多文章是关于「并发特性的科普,以及解释其造成的影响」。从这个角度看,「并发特性」似乎叫好不叫座。

如果从更广的范围考虑「用户体验」,React是否可以有其他发展方向呢?例如,当前连续事件(Continuous Events,指连续触发的事件,如鼠标事件、滚动事件)触发的频率和速度通常比React重新渲染的速度要快,容易造成不好的用户体验。通常的解决方案是使用ref,换句话说,就是降级到手动操作DOM。这里是否有很大的优化空间呢?

除了React外,其他框架是否也可以从这个角度考虑发展方向呢?

你认为前端框架的发展方向走歪了吗?

参考资料[1]

get-in-zoomer-we-re-saving-react: https://www.php.cn/link/67236033be4f58d696d0d4ada931c543

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
js正则表达式
js正则表达式

php中文网为大家提供各种js正则表达式语法大全以及各种js正则表达式使用的方法,还有更多js正则表达式的相关文章、相关下载、相关课程,供大家免费下载体验。

514

2023.06.20

js获取当前时间
js获取当前时间

JS全称JavaScript,是一种具有函数优先的轻量级,解释型或即时编译型的编程语言;它是一种属于网络的高级脚本语言,主要用于Web,常用来为网页添加各式各样的动态功能。js怎么获取当前时间呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

244

2023.07.28

js 字符串转数组
js 字符串转数组

js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

298

2023.08.03

js是什么意思
js是什么意思

JS是JavaScript的缩写,它是一种广泛应用于网页开发的脚本语言。JavaScript是一种解释性的、基于对象和事件驱动的编程语言,通常用于为网页增加交互性和动态性。它可以在网页上实现复杂的功能和效果,如表单验证、页面元素操作、动画效果、数据交互等。

5306

2023.08.17

js删除节点的方法
js删除节点的方法

js删除节点的方法有:1、removeChild()方法,用于从父节点中移除指定的子节点,它需要两个参数,第一个参数是要删除的子节点,第二个参数是父节点;2、parentNode.removeChild()方法,可以直接通过父节点调用来删除子节点;3、remove()方法,可以直接删除节点,而无需指定父节点;4、innerHTML属性,用于删除节点的内容。

481

2023.09.01

js截取字符串的方法
js截取字符串的方法

js截取字符串的方法有substring()方法、substr()方法、slice()方法、split()方法和slice()方法。本专题为大家提供字符串相关的文章、下载、课程内容,供大家免费下载体验。

212

2023.09.04

Js中concat和push的区别
Js中concat和push的区别

Js中concat和push的区别:1、concat用于将两个或多个数组合并成一个新数组,并返回这个新数组,而push用于向数组的末尾添加一个或多个元素,并返回修改后的数组的新长度;2、concat不会修改原始数组,是创建新的数组,而push会修改原数组,将新元素添加到原数组的末尾等等。本专题为大家提供concat和push相关的文章、下载、课程内容,供大家免费下载体验。

218

2023.09.14

js截取字符串的方法介绍
js截取字符串的方法介绍

JavaScript字符串截取方法,包括substring、slice、substr、charAt和split方法。这些方法可以根据具体需求,灵活地截取字符串的不同部分。在实际开发中,根据具体情况选择合适的方法进行字符串截取,能够提高代码的效率和可读性 。

219

2023.09.21

Golang 网络安全与加密实战
Golang 网络安全与加密实战

本专题系统讲解 Golang 在网络安全与加密技术中的应用,包括对称加密与非对称加密(AES、RSA)、哈希与数字签名、JWT身份认证、SSL/TLS 安全通信、常见网络攻击防范(如SQL注入、XSS、CSRF)及其防护措施。通过实战案例,帮助学习者掌握 如何使用 Go 语言保障网络通信的安全性,保护用户数据与隐私。

2

2026.01.29

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Node.js 教程
Node.js 教程

共57课时 | 9.6万人学习

Vue 教程
Vue 教程

共42课时 | 7.4万人学习

Django 教程
Django 教程

共28课时 | 3.6万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号