写点什么

Dart 的第 4 个里程碑版本发布 核心类库已经稳定

  • 2013-04-18
  • 本文字数:991 字

    阅读完需:约 3 分钟

Google 的 Dart 团队发布了 Dart SDK 的第4 个里程碑版本(即M4)。之前的里程碑版本中Dart 语言已经稳定下来,而M4 版本使一些核心类库稳定了下来,特别是dart:core、dart:collection 和dart:async。性能也有所改进。DartVM 负责原生运行Dart 代码,相对于Chrome 中的JavaScript 引擎 v8 ,它的速度提高在 160%(DeltaBlue 基准测试)到 200%(Richards 基准测试)之间。该版本也带来了速度更快的 dart2js 编译器,我们之前也做过报道

该版本中的 API 变更总结如下:

  • Iterable.join 中的分隔符参数默认值由 null 改为""。
  • 所有的 DateTime 常量都改为非缩写形式,DAYS_IN_WEEK 改为 DAYS_PER_WEEK。
  • 移除了以下弃用的类和方法:
    • CollectionSink
    • Stream.pipeInto
    • Iterable/Stream.max/min
    • Collection(List、Set 和 Queue 现在直接继承 Iterable)
    • Datetime.</<=/>/>=
    • IOSink.writeStream(重命名为 IOSink.addStream)
    • IOSink.writeBytes(重命名为 IOSink.add)
    • StreamSink(重命名为 EventSink)
  • 引入了不需要初始值的 Iterable.reduce Stream.reduce。
  • 重构了 List 的 range 相关函数:
    • List.getRange 接收一个 endIndex 参数,返回 Iterable
    • List.setRange 接收一个 endIndex 参数和一个 iterable 参数(还添加了一个可选的 skipCount 参数)
    • List.removeRange 接收一个 endIndex 参数
    • 移除了 List.insertRange
    • 添加了 List.replaceRange
    • 添加了 List.fillRange
    • 添加了 List.setAll(不严格地讲,这也算一个 range 函数)
  • Stream.hasSubscribers 重命名为 Stream.hasListener
  • 移除了 async:EventSinkView。
  • 移除了 AsyncError 类。
  • 移除了 StreamController.broadcast。
  • dart:html 中 Web Worker 相关的大部分 API 都已移除,同时设计了更合适的 API。Worker 类仍然保留,用于派生 Javascript worker。
  • InvocationMirror 重命名为 Invocation。
  • Function.apply 将 Symbol 用作具名参数。
  • dart:mirror 现在用 Symbol 代替了 String,来表示名字。

API 变化频繁,这是目前使用 Dart 进行开发所面临的主要挑战之一,因为用户需要紧盯着邮件列表中的破坏性更改。Dart 团队准备在今年夏天发布1.0 版本,可能还会加入破坏性更改。一旦到了1.0 版本,API 就不会这么频繁地变化了。随着夏天的临近,这种变化的数目有望减少。

Dart SDK M4 可以从 Dart 的网站下载,支持 Windows、Linux 和 Mac。

查看英文原文 Dart’s M4 Release Stabilizes Core Libraries

2013-04-18 08:571154
用户头像
臧秀涛 略懂技术的运营同学。

发布了 300 篇内容, 共 133.8 次阅读, 收获喜欢 35 次。

关注

评论

发布
暂无评论
发现更多内容

基因组大数据计算: CPU和GPU加速方案深度评测

INSVAST

基因测序 基因数据分析

靶向RNA-seq全面解决方案和加速分析,只看这篇就够了!

INSVAST

基因测序 基因数据分析 RNAseq

大数据平台安全主要是指什么安全?如何保障?

行云管家

大数据 数据 大数据平台 大数据平台安全

推荐系统在线峰会来了,冷启动、推荐工程、模型训练…你都能找到答案

小红书技术REDtech

推荐系统

使用云函数实现定时签到

查拉图斯特拉说

腾讯云 签到

财务数智化十年“老兵”的六条财务共享中心建设体会

用友BIP

智能财务 财务共享

Sentieon | 每周文献-Long Read Sequencing(长读长测序)-第七期

INSVAST

基因测序 长读长测序 Long Read

Sentieon|应用教程:利用Sentieon Python API引擎为自研算法加速

INSVAST

开源软件 基因测序 Python API

多城市家政预约到家服务小程序/APP开发搭建

V\TG【ch3nguang】

预约小程序

制造执行系统(MES)在汽车行业中的应用

万界星空科技

MES系统 汽车

端云一体化云开发,助推HarmonyOS应用与元服务高效开发

最新动态

DNAscope白皮书: 基于机器学习的高精度胚系变异检测流程

INSVAST

基因测序 基因数据分析

Sentieon | 应用教程: 关于读段组的建议

INSVAST

代码 教程 字段 基因测序

Sentieon | 每周文献-Multi-omics(多组学)-第九期

INSVAST

基因测序 Multi-omics 多组学

直播预告|没有 “专业” 的向量数据库,大模型就玩不转了吗?

Zilliz

非结构化数据 Milvus Zilliz AIGC 向量数据库

实现高效数据同步:40 分钟内同步500GB MySQL 数据至 Doris

NineData

MySQL 数据库 Doris 数据迁移 数据实时同步

动力商城/积分兑换商城系统开发——助企业建立自己的电商管理业务

V\TG【ch3nguang】

积分商城

生命数字化时代来临:全基因组计算成本不到1美元

INSVAST

基因测序 基因数据分析

Sentieon | 每周文献-Liquid Biopsy(液体活检)-第十期

INSVAST

基因测序 液体活检 Liquid Biopsy

共享服务器的复杂性与核心原理

天翼云开发者社区

服务器

生成式AI:改变生活创造未来

百度开发者中心

#人工智能 ChatGPT 生成式AI 文心一言

使用Sentieon加速甲基化WGBS数据分析

INSVAST

基因测序 dna WGBS 甲基化

Sentieon DNAscope:适配多测序平台数据的快速精准分析流程

INSVAST

基因测序 基因数据分析 DNAscope

视频增强和修复工具 Topaz Video AI 3.3.11激活包+注册码

mac大玩家j

Mac软件 视频处理工具 视频编辑软件 视频剪辑工具

使用DWS集群,用户被锁定如何解锁

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 8 月 PK 榜

Sentieon | 每周文献-Clinical Trial-第十一期

INSVAST

基因测序 临床试验

Hap-eval:Sentieon开源的多测序平台SV精度评估工具

INSVAST

代码 基因测序 Hap-eval

苹果电脑推荐 Office 2019 v16.77 beta永久激活版+激活工具

胖墩儿不胖y

Mac软件 office办公套件 Office 2019中文版

仓库进销存ERP管理系统开发搭建部署

V\TG【ch3nguang】

进销存系统 ERP管理系统

Sentieon | 每周文献-Benchmark and Method Study(基准与方法研究)-第八期

INSVAST

基因测序 基因数据分析 基准与方法研究

Dart的第4个里程碑版本发布 核心类库已经稳定_语言 & 开发_Zef Hemel_InfoQ精选文章