前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >2021 年 JavaScript 明星项目公布,最受欢迎的竟是它?

2021 年 JavaScript 明星项目公布,最受欢迎的竟是它?

作者头像
崔庆才
发布2022-03-04 12:46:16
1.2K0
发布2022-03-04 12:46:16
举报
文章被收录于专栏:进击的Coder

【编者按】在过去一年中,JavaScript 生态圈的技术框架大放异彩,根据 GitHub 中增加的星星数量排名,JavaScript 领域最受欢迎的项目是 zx、Vite 和 Next.js。开发者越来越看重速度的提升,为构建更好的网站和应用,元框架开始走进大家的视野。许多社区成员都开始从事开发工作,为用户带来更好的体验。今年又将出现哪些表现出色的项目呢?让我们一起来看看吧!

这是「进击的Coder」的第 577 篇技术分享作者:Michael Rambeau编译:郭露来源:CSDN(ID:CSDNnews)

阅读本文大概需要 8 分钟。

最受欢迎的项目:zx、Vite 和 Next.js

今年最受欢迎的项目是谷歌的 zx,可在 JavaScript 或 TypeScript 中编写简单的命令行脚本。

zx 支持在代码中嵌入任何 bash 表达式(ls、cat、git 等等),并借助 JavaScript 模板字面量获得结果。

zx 涵盖了多个软件包提供的功能:

  • node-fetch:使用与浏览器中相同的 API 发出 HTTP 请求
  • fs-extra:运行文件系统
  • Globby:匹配给定用户友好模式的文件名

排在第二位的是 Vite。Vite 是一个构建工具,可通过 esbuild 编译器提供出色的性能。Vite 最初借助 Vue.js 社区提供支持,但如今 Vite 已兼容主要 UI 框架:React、Svelte 和 Lit。

Next.js 排名第三,在 React 领域依旧保持领先的“元框架”地位。

特色工具

尽管未进入前 10,但它是今年最引人注目的工具之一。Astro 可构建加载速度更快的网站,这些网站的 JavaScript 数据更少。

这一概念与静态站点生成 (SSG) 非常相似,但主要区别在于 Astro 支持在页面中使用动态交互内容。

以下是能够在客户端渲染动态组件的情况:

  • 页面加载时
  • 页面闲置时,前提是它是一个低优先级的组件
  • 当使用浏览器 Intersection Observer API 时组件可见时

Astro 最大的优势在于其页面可以使用 HTML 和任何框架编写的组件组合进行构建:React、Vue.js 或 Svelte。

前端框架

自 JavaScript 明星项目推出以来,React 首次成为最受欢迎的UI框架,其次是 Vue.js。

其中最引人注意的是 Svelt 的崛起,它超过了 Angular,位列第三。如今越来越多的工具以及组件将 Svelte 纳入选择框架中(其中包括 Vite)。而 Svelt 的作者 Rich Harris 于去年加入 Next.js 后的 Vercel 团队。

与 Next.js 类似的是,Svelte 拥有自己的元框架,即 SvelteKit,可构建高性能应用程序。

排名第五的是 Solid,是 React 的替代工具之一。其组件采用 JSX 编写,但与 React 不同的是,Solid 并不依赖虚拟 DOM。

Node.js 框架

一般来说,各大 UI 框架都拥有自己的“元框架”来构建可扩展的应用程序,并提供诸如路由、服务器端渲染(SSR)、生成静态页面、优化构建等功能。

  • React 拥有最优秀的元框架 Next.js
  • Vue.js 的元框架为 Nuxt,同时 Vue.js 分为 Vue.js v2 和 v3 两个版本。
  • Svelte 的元框架为 SvelteKit

排在第二位的 Nest 为服务器端 Node.js 框架的先驱,不与任何 UI 库相关联。

位列第三的 Strapi 则是“无头 CMS”的先驱,Strapi 拥有强大的功能,用户可进行数据管理,其最新版本提供了建立在 React 组件库之上的设计系统。

Remix 由 React Router 的作者创建,为构建 React 应用的全栈框架,是 Node.js 框架中的新秀,同时也是今年最惊艳的工具之一。

自推出以来,Remix 就受到大量支持。该框架旨在“提供网络基础,提升用户体验”,其 API 以网络标准为准(HTTP 响应、表单提交等)。

构建工具

2021 年,构建工具已有的趋势越发明显。

越来越多人开始采用原生 ES 模块。Vite 得到广泛采用(其发展速度比 snowpack 更快),因而催生出新的工具生态系统(例如基于 ES 的现代测试框架 Vitest)。Node.js 生态圈中也开始采用ES模块,但难度要更大。TypeScript 甚至推迟了对 Node.js 中 ES 模块的支持。

出于性能的考虑,越来越多的前端工具采用其他语言进行开发。

Lee Robinson 认为,Rust 是 JavaScript 基础设施的未来。Rust 有着良好的性能,同时与 JavaScript 的互操作性较强。NAPI-RS 可让 JavaScript 和 Rust 进行交互。

而 Next.js 则非常看好 swc 的发展,作为一个可扩展的 Rust 编译器,swc 可将 Babel 插件移植到 Rust 上。

Rust 是最受欢迎的的非 JS 语言,但它并不是唯一的语言。Bun 采用的是 Zig,而 Turborepo 和 esbuild 均采用的是 Go。

在 monorepo 中广泛采用的仍然是 Lerna。而单引擎工具 Nx 能够大幅减少构建时间,其覆盖范围一直在快速扩大。其竞争者 Turborepo 在被 Vercel 收购后抢占了巨大的市场。

Vue 生态圈

在 Vue 3 正式发布的一年中,Vue 生态圈正以前所未有的速度迅速发展。

Vue 生态圈提供的新的语法例如 Vue 3 的<script setup>对于创作组件更加友好。同时新的 VS Code 插件 Volar 可为 Vue 提供 TypeScript 支持;基于 Composition API 的状态管理器 Pinea 成为 Vuex 的替代品之一。

随着 Vite 成为新的 Vue 的默认工具,Nuxt 3、Quasar 和 VitePress 等元框架均选择 Vite 作为默认引擎。Vite 大大地提高了开发者体验,并为开发创新提供了新的支撑。

同时开发者在努力将 Vue 2 的 DX 迁移到 Vue 3 上。对于 Vue 开发者来说,2021 年是伟大的一年,他们的应用在 DX 和性能方面都得到了极大改善。

React生态圈

React 18 即将发布,现在已经可以使用 RC 版本体验新功能,例如自动批处理以减少渲染或 SSR 对 Suspense 的支持。

React 18 增加了人们期待已久的并发渲染器并支持 Suspense,但没有任何重大更新,其初始版本将提供部分并发功能,例如 startTransition。

React 去年在各浏览器和服务器上迅速发展,期待它能够走得越来越远。

JavaScript 中的 CSS

测试框架

移动开发

桌面开发

静态站点

状态管理

GraphQL

结论

为构建更好的网站和应用程序,元框架时代已悄然来临。Next.js、Nuxt、SvelteKit 以及 Remix 等框架都为开发者了更多的可能。

许多 JavaScript 社区中的著名成员都加入了科技公司并从事开发工作:

  • Kent C. Dodds 加入了 Remix 团队,他认为 Remix 能够为用户带来绝佳的开发体验。
  • Svelte 的作者 Rich Harris、React 核心团队的 Sebastian Markbåge 以及Jared Palmer 则加入了 Vercel,并采用开源解决方案来管理monorepos(Turborepo)。

由于开发者越来越注重速度的提升,因此 Rust 和 Go 等编程语言的应用范围越来越广,JavaScript 前途未卜。

Deno 开始采用 swc 工具,过去一年中其表现依旧非常强势,并且仍在不断推出更新。同时 Deno 还推出了 Deno Deploy。

2022 年能否成为 JavaScript 全栈应用的黄金时代呢?让我们一起期待一下吧!

参考链接

  • https://risingstars.js.org/2021/en#conclusion

End

崔庆才的新书《Python3网络爬虫开发实战(第二版)》已经正式上市了!书中详细介绍了零基础用 Python 开发爬虫的各方面知识,同时相比第一版新增了 JavaScript 逆向、Android 逆向、异步爬虫、深度学习、Kubernetes 相关内容,‍同时本书已经获得 Python 之父 Guido 的推荐,目前本书正在七折促销中!

内容介绍:《Python3网络爬虫开发实战(第二版)》内容介绍

扫码购买

好文和朋友一起看~

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-03-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 进击的Coder 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档