燃爆上海 5·23-24,AICon 大模型实战风暴,50+ 干货一网打尽,100% 日程上线 了解详情
写点什么

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:571376
用户头像
臧秀涛 略懂技术的运营同学。

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

关注

评论

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

开启 Kerberos 安全认证的大数据环境中如何正确指定 HS2 的 jdbc url 地址?

明哥的IT随笔

大数据 hive kerberos

Git Stash:临时保存和切换工作状态的利器

凌览

git git stash

彻底告别传统FTP,新的替代FTP产品比你想象的好的多

镭速

传输协议 FTP传输替代方案

上新啦!腾讯云云原生数据湖产品DLC 2.2.5版本发布,来看特性详解

腾讯云大数据

数据湖

人工智能伦理—面对技术的道德挑战

测吧(北京)科技有限公司

测试

百度智能云 AI 加速器第二期今日开营,42家AI原生应用企业入选

极客天地

关于 TDengine 3.0 数据订阅,你需要知道这些

TDengine

tdengine 时序数据库 国产时序数据库

华为云API对话机器人CBS的魅力—要是有AI,我要做“李白”- 5分钟开发作诗机器人

华为云PaaS服务小智

云计算 软件开发 华为云

软件测试/测试开发丨利用ChatGpt编写测试方案

测试人

人工智能 程序员 软件测试 测试方案 ChatGPT

体验亚马逊的 CodeWhisperer 感觉

亚马逊云科技 (Amazon Web Services)

Java 人工智能

聚势共创 多元共生——中科美菱联动清华大学助力产研融合!

联营汇聚

OpenHarmony自定义组件介绍

OpenHarmony开发者

OpenHarmony

跨网传输文件时,如何通过日志记录来审计追溯?

镭速

跨网文件传输

WorkPlus私有化部署IM即时通讯平台,构建高效安全的局域网办公环境

BeeWorks

DevOps|研发效能团队组织架构和能力建设

laofo

DevOps cicd 研发效能 持续交付 组织架构

自动驾驶汽车—AI技术的未来之路

测吧(北京)科技有限公司

测试

ICCV 2023|小红书 4 篇入选论文亮点解读,「开集视频目标分割」获得 Oral

小红书技术REDtech

算法 ICCV

活动预告 | 中国数据库联盟(ACDU)中国行第三站定档成都,邀您探讨数据库前沿技术

墨天轮

MySQL 数据库 oracle postgresql zabbix

AI在医疗保健中的潜力与挑战

测吧(北京)科技有限公司

测试

华为3场重磅主题演讲先睹为快,顶级云原生&开源盛会即刻出发

华为云开源

华为 开源 云原生 KubeCON

用友系列之 YonBuilder 低代码平台概论和基本使用

YonBuilder低代码开发平台

低代码 可视化

Generative AI 新世界 | 扩散模型原理的代码实践之采样篇

亚马逊云科技 (Amazon Web Services)

机器学习 #人工智能 生成式人工智能 Amazon SageMaker 大语言模型

自动驾驶汽车:AI技术的未来之路

测吧(北京)科技有限公司

测试

写SAE评测,获 Airpods 2大奖【集结令】!

Serverless Devs

Serverless 云原生 AIGC

如何在低代码平台中应用可视化编程

力软低代码开发平台

如何访问TDH中Inceptor 底层的元数据库TxSQL

明哥的IT随笔

大数据 hive

HarmonyOS使用多线程并发能力开发

HarmonyOS开发者

HarmonyOS

人工智能塑造未来城市生活

测吧(北京)科技有限公司

测试

从技术创新到应用实践,百度智能云发起大模型平台应用开发挑战赛!

不叫猫先生

百度智能云 千帆大模型平台

机器学习:解码人工智能的核心技术

测吧(北京)科技有限公司

测试

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