当前位置:首页 > 技术分析 > 正文内容

Vite 新的基于 Rust 的 JavaScript 打包器现已推出 Beta 版

ruisui884个月前 (02-03)技术分析20

Rolldown 是一款用 Rust 编写的 JavaScript 打包器,由 void(0)(该公司还负责 Vite)创建,现已推出测试版。Rolldown 团队在介绍该打包器时表示,新打包器提供了与 Rollup 兼容的 API 和插件接口,但在范围上与 esbuild 更相似。

目标是用一个统一的 Vite 构建工具取代 Vite 中当前用作依赖项的 esbuild 和 Rollup 。由于它是用 Rust 编写的,因此其性能与 esbuild 处于同一水平,并且比 Rollup 快 10-30 倍。

该团队补充道: “它的WASM构建也比 esbuild 快得多(由于 Go 的 WASM 编译不够理想)。”

该团队写道,尽管 Rolldown 是为 Vite 设计的,但它可以用作独立的通用捆绑器。

根据Rolldown 介绍页面,在大多数情况下它可以作为 Rollup 的替代品,当需要更好的分块控制时,也可以用作 esbuild 的替代品。

如果您想了解更多,JavaScript YouTuber Theo Browne 也对 Rolldown 进行了深入研究。

React Native 与 Flutter:使用率不相上下

尽管 Flutter 在小众移动开发者中占据主导地位,但React Native在使用跨平台移动框架的更广泛开发者群体中仍胜过 Flutter。

根据 TNS 对最新 Stack Overflow 调查的分析,专注于移动开发的开发人员使用 Flutter 的可能性是使用 React Native 的两倍(41% vs 20%)。移动开发人员仅占调查的 3%。在所有专业开发人员中,Flutter 略占优势(9% vs 8%)。

许多 Web 优先的开发人员使用 JavaScript,但只有 37% 的专业移动开发人员经常使用 JavaScript。不过,在 JavaScript 用户中,React Native 略微领先于 Flutter(14% vs 13%)。

JetBrains 的最新调查发现,30% 的开发者将应用程序部署到移动平台,但其中只有 54% 的人真正使用了跨平台移动框架。其中,39% 使用 React Native,38% 使用 Flutter。

根据 JetBrains 的研究,在北欧和美国等移动优先开发不太常见的地区,React Native 的采用速度超过了 Flutter。

Nue Web 框架转向“标准优先”

前端/UX 开发人员Teri Piirainen,网络框架Nue的创建者,对 JavaScript 及其对现代网络开发的影响有很多话要说。

“我们已经规范了这样一种观点,即简单的任务需要大量的 JavaScript,”Piirainen 在Nue JS 文档中写道。“这种基本样式需要数千个实用程序类。设计更改意味着更新无数组件。虽然这种方法最初看起来很有效,但它会产生僵化的系统,这些系统会抵制变化,并且随着时间的推移变得越来越难以维护。”

正如您所想象的,Nue 试图纠正这种情况。它是一个用于构建用户界面的极小(压缩后 2.3kb)JavaScript 库。

虽然 Nue 已经开发了一段时间,但本月,Piirainen 宣布它现在将是一个“标准优先”的网络框架。

Piirainen 写道:“我们的重点一直是剥离人为的层次,帮助开发人员将现代 HTML、CSS 和 JavaScript 发挥到极致。”

他补充说,这一转变将使他能够专注于两个问题:

  1. 前端工程问题,他认为这是复杂性的正常化。“最初的 HTML、CSS 和 JavaScript 已经演变成复杂的构建流程,即使对于一个简单的页面,也需要数百个依赖项,”他解释道。
  2. 设计工程问题,即网页设计应该重新关注设计而不是 JavaScript。“首先,JavaScript 工程师已经劫持了对话,”他写道。“你上次看到工程师们争论完美五分法印刷量表的优点或 Dieter Rams 系统方法背后的原则是什么时候?”

但是当他写道现在是标准第一时他的意思是什么呢?

“过去十年,浏览器有了长足的发展,”他写道。“通过遵循标准而不是违背标准,我们可以用更少的代码创造出更好的产品。”

这也意味着将语义 HTML 作为一切的基础并优先考虑内容。

他补充道:“内容存在于干净、可访问的文件中,而不是 JavaScript 中。”

他还强调使用现代、系统化的 CSS 进行设计。他认为,这样做的结果是工具速度更快、代码更简洁、页面加载速度更快。

“最快的页面加载只需要一个请求。无需初始化框架,无需累积布局变化,无需等待 JavaScript,”他写道。“当内容和样式一起到达时,页面就会出现。”

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/840.html

标签: vite.js
分享给朋友:

“Vite 新的基于 Rust 的 JavaScript 打包器现已推出 Beta 版” 的相关文章

Vue组件通信之props深入详解!

props 是 Vue 组件中一个很重要的概念。它是用来从父组件向子组件传递数据的。为什么需要props?这是因为在Vue中,组件是相互隔离的。每个组件都有自己的作用域,子组件无法直接访问父组件的状态或值。通过props,父组件可以将数据传递给子组件。使用props的步骤:1. 在子组件中定义pro...

vue 3 学习笔记 (八)——provide 和 inject 用法及原理

在父子组件传递数据时,通常使用的是 props 和 emit,父传子时,使用的是 props,如果是父组件传孙组件时,就需要先传给子组件,子组件再传给孙组件,如果多个子组件或多个孙组件使用时,就需要传很多次,会很麻烦。像这种情况,可以使用 provide 和 inject 解决这种问题,不论组件嵌套...

深度解析!AI智能体在To B领域应用,汽车售后服务落地全攻略

在汽车售后服务领域,AI智能体的应用正带来一场效率和专业度的革命。本文深度解析了一个AI智能体在To B领域的实际应用案例,介绍了AI智能体如何通过提升服务顾问和维修技师的专业度及维修效率,优化汽车售后服务流程。上周我分享了AI智能体+AI小程序To C的AI应用场景《1000%增长!我仅用一个小时...

js中数组filter方法的使用和实现

定义filter() 方法创建一个新数组, 其包含通过所提供函数实现的测试的所有元素。语法var newArray = arr.filter(callback(element[, index[, selfArr]])[, thisArg])参数callback循环数组每个元素时调用的回调函数。回调函...

Vue实战篇|使用路由管理用户权限(动态路由)

权限控制是后台管理系统比较常见的需求,如果我们需要对某些页面的添加权限控制的话,那我们可以在路由管理中的权限做一些校验,没有通过权限校验的给出相应的提示或者直接跳转到报错页面。跟着我一起来学vue实战篇路由管理权限吧!权限校验函数getCurrentAuthority()函数用于获取当前用户权限,一...

TDesign企业级开源设计系统越发成熟稳定,支持 Vue3 / 小程序

TDesing 发展越来越好了,出了好几套组件库,很成熟稳定了,新项目完全可以考虑使用。早在2021年,腾讯的 TDesing 刚发布不久,我就写了一篇简短的文章来介绍,当时主要关注的是 TDesign 的 Vue 组件库和用来搭建 admin 后台系统的实用性。虽然当时看起来不错,但还处于测试版,...