Google 设计 Dart 的目标是让其成为一种更优秀的 web 语言,为不满足于 JavaScript 生态系统中现有功能的开发者提供了一套更健壮的语言与工具,同时也将更好的性能作为设计目标。虽然 Dart 明显较之 JavaScript 更健壮、设计更优秀,并且在一些基准测试中的指标已超越了JavaScript 的表现,但这门语言目前的发展遇到了一些挫折。
在今年三月,Google 宣布,他们不会继续将Dart VM 推送至浏览器,而是专注于将Dart 编译为JavaScript 的工作。在这次声明中Google 提到,这样做的原因是开发者希望“能够将Dart 与JavaScript 进行更好的整合,并能希望能够通过一种更简单的方式让他们的应用_ 在所有现代浏览器_ 上进行调试与优化”(重点是“现代浏览器”)。开发者需要让他们的应用运行在所有主流浏览器上,希望整个开发、测试与调试流程能够跨所有平台实现统一。出于这一原因,他们回避了使用Dart VM 的选择。因而Google 选择将针对web 的VM 工作转到次要地位,但Dart 团队并没有完全放弃Dart VM,他们仍在继续“对服务器、嵌入式以及移动设备上的Dart VM 开发投入大量的精力”。
另一个挫折是 Dart Editor 宣布开发中止,Google 推荐在上手练习 Dart 时使用 DartPad ,而在实际开发中使用 WebStorm 。此外,Google 刚刚宣布中止对 Chrome Dev Editor 的开发,这是一个 JavaScript 与 Dart 代码的编辑器,这一点或许是因为 Google 正在将专注点转向 IntelliJ IDE,他们最近就将 Android 的开发从 Eclipse 转向了 IntelliJ 的 Android Studio 。对此,Google 的软件工程师 Devon Carew 评论道:“Dart 团队在 IDE 方面对于 IntelliJ 投入了成倍的关注,他们正致力于进行一些基础设施的建设,希望能够对所有 IDE 与开发环境有所帮助,特别是 Dart Analysis Server。”这一点或许也暗示着 Chrome 的战略地位正在逐渐下滑,可能是因为它没有实现成为默认的 web 浏览器的目标,同时竞争者们在特性与性能方面也在迎头赶上,包括即将问世的Microsoft Edge 浏览器。
Dart 如今的竞争对手是 TypeScript,对于 JavaScript 开发者来说,后者的使用更为简易。TypeScript 的发展也颇为顺利,甚至 AngularJS 团队也与微软打得火热,帮助他们为 TypeScript 设计了注解功能。
Google 已决定将Dart 项目迁移到GitHub 平台上,包括完整的SDK、VM、dart2js 以及各种库。这一变化会使得这门语言对开发者产生更大的吸引力吗?这一点还有待观察。但有一点是毫无疑问的:打破习惯有时是一件很困难的事。虽然对于JavaScript 的不足的抱怨声此起彼伏,并且Google 投入了大量的精力打造出这门明显优于JavaScript 的语言,但现实情况是浏览器的数量摆在那里,而开发者对于JavaScript 的熟悉也影响了Dart 的采用率。还有许多人愿意选择一种更简便的迁移路径,而这正是TypeScript 所提供的。
查看英文原文: Google Moves Dart to GitHub and Kills the Chrome Dev Editor
评论