50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

从 React 到 HTML 优先:Microsoft Edge 推出 “WebUI 2.0”

Richard MacManus

  • 2024-07-03
    北京
  • 本文字数:2832 字

    阅读完需:约 9 分钟

大小:1.30M时长:07:32
从 React 到 HTML 优先:Microsoft Edge 推出 “WebUI 2.0”

导读:随着新的浏览器技术崭露头角,微软 Edge 浏览器的最新升级正向我们展示了一个全新的网页开发方向。这不仅是一次技术层面的升级,更可能是一场网页开发领域的革命性变革。本文深入探讨了 Edge 团队如何摒弃传统的 JavaScript 框架,转向更加轻量、快速的 HTML 优先方案。这一转变不仅技术意义深远,更可能引领未来网页开发的新潮流。若你对网页开发的未来充满好奇,渴望了解这一变革的详细信息和潜在影响,请继续阅读本文。


二十年前,基于浏览器的应用程序——也就是 Web 应用——在功能方面取得了长足的进步。2004 年 4 月,谷歌推出了首批能够像本地应用程序一样运行的 Web 应用之一,即 Gmail。其背后的技术是一种后来被称为“Ajax”(异步 JavaScript 和 XML)的 JavaScript 技术,这项技术使得 Web 应用程序能够异步地与服务器进行数据交换,从而无需用户手动刷新页面。


2004 年的互联网 因此变得更加互动。Gmail 利用 Ajax 技术实现了邮件的即时加载和实时搜索,其他 Web 应用如 Flickr、Bloglines 和 Basecamp 也迅速跟进。随后,Facebook 也采用了 Ajax 技术,实现了评论和点赞的异步提交和接收,这些操作可以即时在页面上更新,无需刷新整个页面。这一技术的应用如同魔法一般,推动了“ Web 即平台”(即 Web 2.0)在接下来的十年里蓬勃发展。


深入探讨 JavaScript 的双刃剑效应


然而,随后的发展却颇为有趣。自 2014 年起至今,开发者们对 JavaScript 的青睐与日俱增——好东西自然是多多益善,对吧?因此, Web 应用变得越来越复杂,尤其是在 React(2013 年推出)和相关框架如 Next.js(2016 年)问世之后。尽管这确实有助于 Web 应用的扩展,并在用户界面上实现了更多令人惊艳的功能,但同时也增加了用户设备需要处理的 JavaScript 代码量,并加重了开发者的维护负担。


JavaScript 生态系统变得过于庞大,以至于 Web 社区中的一些知名人士开始呼吁回归 Web 平台的基础。过去几年里,我一直在报道这种趋势,但直到现在,我还没有看到哪款大规模 Web 应用真正代表了“回归基础”的潮流。


或许现在我找到了这个答案,那就是微软最新升级的 Web 浏览器——基于 Chromium 的 Edge。这周它引起了我的注意,原因有二。首先,它减少了对 React 的依赖;其次,它增加了对 Web 组件的使用,这是一种以 HTML 为主的 Web 开发方法。


“……从 React 转向现代 Web 组件和 HTML 优先的架构,为用户带来了极大的便利和优势。”


——Alex Russell,Edge 产品经理合伙人


Edge 是如何减少 React 代码的?


微软的博客文章介绍了新版 Edge(122 版),但并未直接提及 React。相反,文章着重强调了用户体验的改进——更快的浏览速度。公司表示:


“从 Edge 122 开始,浏览器的基础用户界面现在响应更为迅速。对于 Edge 用户,UI 的速度提升了 42%,而对于那些没有 SSD 或内存少于 8GB 的设备用户,速度则提升了高达 76%!”


但微软的 Alex Russell,Edge 的合作产品经理(同时他也是 Web 组件的创始人之一),在 Mastodon 上透露了开发细节:


“我们现在使用 Web 技术来构建浏览器的许多部分(例如书签、历史记录、下载、设置、新标签页等),从 React 转向现代的 Web 组件 + 以 HTML 为主的架构,这对用户,特别是使用低端硬件的用户来说,具有巨大的好处。”


实际上,这意味着 Edge 中使用 JavaScript 代码渲染的用户界面减少了。更少的 JavaScript 意味着更小的资源占用,从而为用户提供了更快的 Web 浏览体验。微软还制作了一个简短的视频来展示这种速度差异。


视频:https://youtu.be/avJmgfGpoJA


“WebUI 2.0”是 Edge 浏览器全新推出的 UI 机制,在演示中其速度表现尤为突出。


需要注意的是,目前只有 Edge UI 的部分组件进行了这项改进。在回答一位 Mastodon 用户的提问时,Russell 确认这是“一项持续进行的工作”,Edge 团队正在“逐个界面地转换,目前已完成约 15%”。


你可能会好奇为什么浏览器最初会选择使用 React。实际上,许多浏览器的 UI 本身就是以网页形式存在的。而且,在过去十年里,主流浏览器似乎都走上了使用 React 的道路,和其他开发者一样。所以,像是“浏览器基础”界面(视频中展示的)或者你的浏览器收藏夹——这些实际上都是以网页形式渲染的。微软表示,其他 Edge 功能,如“历史记录、下载、钱包等”,也将在未来几个月内逐步转换为“WebUI 2.0”。


WebUI 2.0 的起源


在微软 Edge 团队的博客文章中,他们承认现代 JavaScript 框架在某些方面确实有其优势,特别是在提升开发人员的工作效率方面。然而,经过深入研究,他们发现这种开发体验是以牺牲用户浏览器速度为代价的。这不禁让人联想到近年的 Web 开发趋势:


“我们的大量代码使用了依赖 JavaScript 来渲染 UI 的框架。这种客户端渲染的方式在过去十年中备受 Web 开发者的青睐,因为它不仅提高了开发人员的工作效率,还实现了更为动态的 UI 体验。


于是,Edge 团队提出了疑问:‘如果我们去掉这些框架,仅使用 Web 平台来构建 UI,浏览器的速度能提升多少呢?’”


“我们期待更多网站能够向以标记语言为主、拥有小型代码包和更少 UI 渲染 JavaScript 代码的方向发展。”


——微软 Edge 团队


这一思考催生了 WebUI 2.0,这是一种全新的以标记语言为主的架构,它最大限度地减少了代码包的大小和在 UI 初始化过程中运行的 JavaScript 代码量。


这种新架构更加模块化,它依赖于“一个为现代 Web 引擎优化的 Web 组件库”。


团队进一步补充说:“我们期待更多网站能够朝着这种以标记语言为主、拥有小型代码包和更少 UI 渲染 JavaScript 代码的方向发展。”


2024 年的“Gmail 时刻”?


我承认,将 Edge 的最新版本与 2004 年的 Gmail 相提并论可能稍显夸张。但考虑到 Edge 拥有庞大的潜在用户群——所有 Windows PC 都推荐使用 Edge(尽管根据过往的法律判决,它不能成为默认浏览器),这一变化可能具有深远的影响。


如果 Edge 采用的新 HTML 优先方法能够激励其他公司和初创企业跟进类似的项目,那么我们可能会见证一个全新的 Web 开发运动拉开序幕。对于许多 Web 开发人员社区的成员来说,这种以标记语言为主、JavaScript 为辅的转变无疑将受到热烈欢迎。


 作者简介


Richard MacManus,《The New Stack》的高级编辑,他撰写的文章涵盖了 Web 和应用开发的最新趋势。早在 2003 年,他便创立了 ReadWriteWeb,并将其发展成为全球颇具影响力的科技新闻网站之一。从博客、社交媒体和 Ajax 等颠覆性互联网工具的早期兴起,到当下的人工智能、元宇宙、JavaScript 框架等技术热潮,多年来,MacManus 一直被公认为技术领域的领军人物,尤其擅长洞察并解读即将到来的技术趋势及其背后的深远意义。


原文链接


https://thenewstack.io/from-react-to-html-first-microsoft-edge-debuts-webui-2-0/


声明:本文为 InfoQ 翻译整理,未经许可禁止转载。

2024-07-03 10:005267

评论

发布
暂无评论
发现更多内容

无处不在的边缘网络感知

阿里云CloudImagine

云计算 边缘云 边缘网络

Spring Boot 如何防护 XSS + SQL 注入攻击 ?终于懂了!

Java你猿哥

sql Spring Boot 后端 ssm XSS

企业研发治理转型利器华为云发布流水线服务CodeArts Pipeline

科技怪授

华为

CosineWarmup理论与代码实战

华为云开发者联盟

人工智能 华为云 华为云开发者联盟 企业号 3 月 PK 榜

Serverless Streaming:毫秒级流式大文件处理探秘

科技怪授

PaaS

程序员标配Springboot!终于有人把SpringBoot讲的通俗易懂了

三十而立

KaiwuDB 荣获第三届 ISIG 产业智能大会年度最佳技术创新奖

KaiwuDB

技术创新 KaiwuDB AIoT数据库

从华为投入研发基础开发工具看国产IDE的未来和商业模式

科技怪授

一个基于序列的弱监督视觉信息抽取学习框架

合合技术团队

人工智能 计算机视觉 OCR

OMG!Go语言设计模式,这样用简直不要太爽!

博文视点Broadview

复杂度分析:如何分析、统计算法的执行效率和资源消耗

京东科技开发者

数据结构和算法 算法和数据结构 复杂度分析 空间复杂度 企业号 3 月 PK 榜

电脑风扇控制软件:Macs Fan Control Pro中文激活版

真大的脸盆

Mac Mac 软件 电脑风扇控制 风扇转速控制

喜马拉雅基于阿里云机器学习平台PAI-HybridBackend的深度学习模型训练优化实践

阿里云大数据AI技术

人工智能 深度学习 开源 gpu 企业号 3 月 PK 榜

浅谈堡垒机优化的必要性-行云管家

行云管家

云计算 网络安全 堡垒机 自动化运维

硬核!阿里出品2023版Java架构师面试指南,涵盖Java所有核心技能

Java你猿哥

Java 架构 后端 面经

内蒙古网络安全等级保护备案办理指引

行云管家

等保测评 等保备案 内蒙古

阿里三面最后一问:解释一下Java并发AQS的独占锁模式

Java你猿哥

Java Java并发 AQS 后端 ssm

打造炫酷时尚的 Neumorphism 设计!

编程的平行世界

flutter 前端 设计 flutter for web

技术领导力之路 - 安全感

阿里技术

技术成长

浪潮 KaiwuDB x 河工大 | 推进能源行业数字化转型建设

KaiwuDB

解决方案 数字能源 KaiwuDB

阿里菜鸟国际Java研发面经(三面+总结):JVM+架构+MySQL+Redis等

三十而立

面试 java

为什么项目老夭折?这份项目管理指南请收好

得物技术

聊聊To B企业的客户成功价值

老张

交付 客户成功

面试滴滴、中信字节跳动等10+公司面经+面试题及答案分享(java岗)

三十而立

SpringCloud 整合Gateway服务网关

Java你猿哥

spring Spring Cloud Spring Boot ssm

阿里云发布「云盒+无影」云端机顶盒解决方案,打造云边端一体化的机顶盒新模式

云布道师

无影 云盒

扩散模型大杀器 ControlNet 解析

Openlab_cosmoplat

人工智能 开源社区 图像

真香!阿里最新出品Java面试核心讲(终极版),Github已星标50K

Java你猿哥

Java 后端 ssm 面经 八股文

深扒RocketMQ源码之后,我找出了RocketMQ消息重复消费的7种原因

程序员小毕

程序员 RocketMQ 后端 架构师 消息中间件

精准测试之分布式调用链底层逻辑

京东科技开发者

分布式 精准测试 调用链 Spark 源码 企业号 3 月 PK 榜

SpringBoot快速搭建、自动流程进阶、装配机制、功能扩展点详解

三十而立

Java 程序员 IT

从 React 到 HTML 优先:Microsoft Edge 推出 “WebUI 2.0”_后端_InfoQ精选文章