Dart 1.22 发布,工具启动性能提升

两味真火
 两味真火
发布于 2017年02月15日
收藏 5

Dart 1.22 发布了。它引入了同步/异步联合类型,断言消息,协变参数覆盖等等。工具启动比现在要快得多。

更快的工具启动

现已切换到使用应用程序快照来运行 SDK 工具,例如 dart2js, analyzer, 和 pub。这改进了启动性能。有关详细信息,请参阅在 Dart Dev Summit 2016 上的 AOT compiling talk。有关如何使用应用程序快照的信息可在 SDK wiki 中找到。对比如下:

断言信息

快速感知(fail fast)原则对于构建高质量软件至关重要,断言是快速感知的最简单方法。但是到现在为止,将信息附加到断言是不可能的,所以如果你想使你的错误有用,你需要抛出一个完整的异常,像这样:

num measureDistance(List waypoints) {
  if (waypoints.any((point) => point.isInaccessible)) {
    throw new ArgumentError('At least one waypoint is inaccessible.');
  }
  // ...
}

在消息处于断言状态时,代码不仅仅是变短了:

num measureDistance(List<Place> waypoints) {
  assert(waypoints.any((point) => point.isInaccessible),
         'At least one waypoint is inaccessible.');
  // ...
}

更重要的是,断言可在生产中完全跳过,因此你的生产代码将会更快(因为它不必在每个 measureDistance() 中调用开始时的迭代路径点)

其他主要更新:

  • 不再支持“Generalized tear-offs”,并将导致错误。 我们更新了语言规范并在1.21中添加了警告,现在正在采取最后一步完全取消对它们的支持。

更多内容请看发行说明更新日志

下载地址:

Dart是一种基于类的可选类型化编程语言,设计用于创建Web应用程序。 Google称,Dart的设计目标是为Web编程创造结构化但又富有灵活性的语言;编程方法一目了然,符合程序员的自然习惯,易于学习;能在所有浏览器 和不同环境中实现高性能。

Dart 代码以两种方式执行,一种是原生虚拟机,一种是JavaScript引擎,用编译器将Dart代码翻译成 JavaScript代码。这允许程序员在Dart中创建Web应用,编译后在任何浏览器上运行。Dart语言官网提供了名叫Dartboard的在线应 用,让感兴趣的开发者在线上编程和运行。

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:Dart 1.22 发布,工具启动性能提升
加载中

精彩评论

huangyanxiong
huangyanxiong
https://www.dartlang.org/community/who-uses-dart
使用的项目还是挺多的,google内部自己都在用
回去干活
回去干活
其实chrome的份额已经非常大了,国内各大浏览器都是用的chrome的核心.
我比较看好dart的原生应用,一定非常牛B

最新评论(8

流云君
流云君

引用来自“宇-天”的评论

这语言,居然还活着...以前想学,发现资料没有,人气也没有,以为挂了
现在好像也排到二十多名了,只是没有golang那么火。
huangyanxiong
huangyanxiong
https://www.dartlang.org/community/who-uses-dart
使用的项目还是挺多的,google内部自己都在用
宇天
宇天
这语言,居然还活着...以前想学,发现资料没有,人气也没有,以为挂了
泛逸舟
泛逸舟
加油
LarryYan
LarryYan

引用来自“回去干活”的评论

其实chrome的份额已经非常大了,国内各大浏览器都是用的chrome的核心.
我比较看好dart的原生应用,一定非常牛B
可惜后来自己chrome都不兼容了,否则还是很想搞得,但是怕后面随便后天不继续维护那就坑爹了
javafile
javafile
好东西
回去干活
回去干活
其实chrome的份额已经非常大了,国内各大浏览器都是用的chrome的核心.
我比较看好dart的原生应用,一定非常牛B
返回顶部
顶部