Why Dart Comes with a Virtual Machine - Victor Savkin
Published on Jun 12, 2024
一篇十年前的旧文,那时 Dart 作为 Web 语言推出。Dart 语言包含了一个高性能的虚拟机(VM),这一决策引发了关于是否会破坏现有 Web 标准的争议。本文探讨了为何需要这个虚拟机,并讨论了如何将其集成到 Chrome 浏览器中,同时保持对其他浏览器的兼容性。
摘要
Dart 语言提供了一个高性能的虚拟机,这一点在服务器端、开发过程中以及浏览器中都有着重要的意义。在服务器端,Dart VM 提供了与 Node.js 类似的执行模型,且性能优于 V8,并具备良好的并发支持,使其成为高性能 IO 密集型服务的不错选择。在开发过程中,由于 Dart 编译器选择了生成高效的 JavaScript 代码,这个过程相对较慢,因此有了 Dart VM 可以提供更快的交互式开发体验。在浏览器中,集成 Dart VM 能显著提高性能和启动速度,尤其是在移动设备上。为了确保 Dart 应用程序能在所有现代浏览器中运行,作者建议 Chrome 浏览器定期请求应用程序的 JavaScript 版本,这样即使使用了集成了 Dart VM 的浏览器,也能确保开发者提供了编译成 JavaScript 的应用程序版本。这种策略已经在 Chrome 添加 SPDY 协议支持时得到了验证。
观点
- 服务器端: Dart VM 在服务器端的使用是公认的,它提供了与 Node.js 相似的执行模型,且性能优于 V8,并具备良好的并发支持。
- 开发过程: 在开发过程中,Dart 编译器选择了生成高效 JavaScript 代码的策略,这可能导致编译时间较长,但 Dart VM 能够提供快速的交互式开发体验。
- 浏览器集成: 将 Dart VM 集成到浏览器中可以显著提高应用程序的性能和启动速度,特别是对于移动设备来说这一点至关重要。
- 保持 Web 兼容性: 通过定期请求应用程序的 JavaScript 版本,可以确保 Dart 开发者提供了兼容所有现代浏览器的应用程序版本,从而避免破坏现有的 Web 生态系统。
《Maeiee成长感悟》- 从北漂到准父亲的生活洞察
生活在快速节奏的都市,作为程序员和即将迎来人生新角色的我,经历了无数难忘的瞬间和深刻的思考。这些体验和感悟,我渴望与你分享。
《Maeiee成长感悟》是一个收集我所有重要生活事件和心得的地方。每一篇文章都是对过去经历的反思和对未来生活的展望,真实记录作为一个程序员、副业探索者、终身学习者、一个准爸爸和一个北漂的多重身份之间的平衡与挑战。
这里没有华丽的辞藻,只有最真实的思考和感受,希望它们能触动你的心弦,也许能在你的生活旅程中提供一些启示和慰藉。