|
http://www.zhihu.com/question/20833518/answer/16419673
Dart 是针对现代 Web 浏览器的新语言,良好结构化适合从小型到大型的 Web 应用。最初是由 Google 的 Chrome V8 团队打造,主要成员包括虚拟机和编程语言大师 Lars Bak、Gilad Bracha 等人。现在编译为 JavaScript 的语言已经很多了,它们都是为 Web 开发者提供了 JavaScript 以外的技术选择。而 Dart 团队在新语言上投入应该是最大的。
Dart 是一种简单、熟悉的面向对象语言,基于类、单继承、多实现,可选的静态类型(Dart本身是动态语言),单线程,支持异步(Future)和并发(Isolate)编程。支持库(import其它库),有自己的包管理工具 Pub。Dart 有良好的工具支持(Dart Editor),支持调试、重构、代码自动完成、代码导航、静态代码分析(显示警告和错误)……
Dart 有许多非常好语言特性,比如方法级联调用、工厂构造函数、可选类型、字段与方法统一的 getter/setter、可选参数、接口和类的统一、提供接口的默认实现、操作符重载、Markdown注释等。比如方法级联调用是语言级别的支持,减轻了设计者前期的设计负担。这里就不详细赘述了。
Dart 有自己原生的虚拟机,可以直接在 VM 上运行,并且性能高于 JavaScript V8。高性能本身就是 Dart 的目标之一,以 snapshot 的方式可以使应用启动速度提高10倍(仅限VM)。通过 dart2js 编译为 JavaScript ,程劭非说的一个 hello 生成上万行 js 代码是很久以前的事情,现在当然没那么大。一般应用大概是几百K,如果最小化并gzip 就只有原来的1/10。不过要注意的是 Dart 仅支持 IE9 及以上的版本。
欢迎试用 Dart,Dart: Structured web apps
|
|