偶然发现 Qwik
这个 Node.js
后端框架,感觉非常新奇,它构建的网站,能够在谷歌的网站评测工具中跑出100分满分的成绩,而且还是移动端(一般情况下,移动端分值要低于PC端)!不得不说它是真的流弊。
有过开发经验的童鞋都知道,页面加载的 js
文件有时会很大,里面包含了这个页面上所有 DOM元素
的事件方法。但是,通常情况下,用户并不会触发所有的事件,也就是说,js
文件中的方法代码,绝大部分是用不到的!
Qwik
帮我们做的,就是把所有的事件方法全部拆分成单独的 js
文件,用户需要触发时从服务器上下载下来,然后触发,这样极大的减少了 js
文件的体积。(官方说,在页面加载时只加载一个 1k 大小的 js
文件)
如今,终于迎来了它的 v1.0
版本。
本文通过谷歌翻译直译过来,里面可能会有一些表述不准确的地方,原文链接在文末。
Qwik 团队很高兴地宣布 Qwik 已经达到 v1.0。Qwik 是一个全栈网络框架,它带来了一种全新的方法来大规模交付即时应用程序。
React、Vue、Angular、Svelte、SolidJS 等框架及其元框架(Next.js、Nuxt、SvelteKit、SolidStart、Astro)通过提供强大的工具和抽象来简化构建复杂应用程序的过程,从而彻底改变了 Web 开发。
这些框架启发了许多开发人员创建创新的解决方案,以增强用户体验和开发人员体验,并提高 Web 应用程序的整体质量。
Qwik从这些框架中汲取了很多灵感,利用它们的优势为构建 Web 应用程序提供快速、可扩展和可维护的解决方案。
通过在这些框架奠定的基础上构建,Qwik 能够为开发人员提供强大的工具集,使他们能够快速高效地构建 Web 应用程序,同时保持高水平的质量和性能。
随着 Web 应用程序变大,它们的启动性能会下降,因为当前的框架会向客户端发送过多的 JavaScript。保持初始包大小较小是一场永无止境的战斗,没有乐趣,而且我们通常会输。
Qwik 向用户提供即时应用程序。这是通过保持初始 JavaScript 成本不变来实现的,即使您的应用程序变得越来越复杂。然后 Qwik 只为特定的用户交互提供 JavaScript。
这确保了 JavaScript 不会压倒浏览器,无论应用程序有多大。最后,推测性代码获取确保即时交互,即使在慢速和间歇性网络上也是如此。
将其视为JavaScript 的流式处理。
Qwik 的理念是确保简单的路径是高性能的路径。这就是为什么 Qwik 开箱即用地解决了:
Qwik 提供快速扩展的即用型集成与您最喜爱的库和框架的领域。只需npx qwik add从命令行运行并从列表中选择您需要的内容。
Qwik-React允许您在 Qwik 应用程序中懒惰地混合 React 组件。利用 Qwik 中现有的 React 生态系统,使用 Qwik-React 逐步迁移到 Qwik,或者通过延迟水化部分应用程序来加速您的 React 应用程序。Qwik-react 将孤岛架构设计模式引入您的 React 应用程序。
Svelte、Vue 和 Angular 包装器正在由社区开发。
Qwik 拥有一个由热情的开发人员、热情的贡献者和全球支持用户组成的多元化和包容性社区。这个社区总是充满活力,不断合作,分享想法,并突破框架可以实现的界限。
世界各地还有一群快速成长的社区领袖,来自法国、荷兰、英国、美国、以色列、葡萄牙、台湾、匈牙利等地的开发者团体和聚会正在加入这个精彩的 Qwik 社区领袖团体。