新版本发布潮:Ceylon 1.2、Node.js 5.0 和 Atom 1.1

  • Abel Avram
  • 刘振涛

2015 年 11 月 3 日

话题:JavaScriptNode.js语言 & 开发

近日,CeylonNode.jsAtom都发布了最新的稳定版,我们决定通过这篇文章快速介绍新版本中大多数值得注意的特性和增强功能。

Ceylon 1.2

Ceylon 最新版 1.2 与上一版1.1时隔一年之久,为我们带来了如下新特性:

  • 命名构造函数 – 这些函数不依赖重载,有命名(除了类名)且命名的首字母小写,可以使用关键字new来声明构造函数。
  • 序列化
  • 原生注释
  • 更好的流敏感类型
  • letswitchif表达式
  • 内联对象表达式
  • Tuple 及 Entry 的解构
  • 直接引入单例成员
  • 等等。

Ceylon 1.2 还引入了新的 API:不可变 map 和 set、Collection.permutations()、formatFloat() 以及其它 API;Java 编译器进一步优化,增强了的与 Maven 和 Java 注释互操作性,为 Scala 库的互操作提供了基础支持,编译后的类是可序列化的;JavaScript 编译器支持类型函数;重写调试器,模块可被打包成 Java EE WAR Archive 格式;强化 IDE,重新设计在线 IDE。想要详细了解 Ceylon 1.2 更新的特性及增强的功能,推荐阅读Gavin King 发布的公告

Node.js 5.0

在历经多年的小碎步发布(0.x.y)后,Node.js 于今年加快了步伐,无论是源代码提交的数量还是版本的编号都跨上了新的层级,每隔一至多个月会发布一个新的主版本。Node.js 5.0 是一个中间过渡的版本,将在 2016 年四月被替换为 v.6.0,届时的 6.0 版本会变成一个 LTS(长期支持的)发布。有稳定性需要的用户推荐继续使用 4.x. 版本。

Node.js 5.0 是为那些想要尝试最新增强功能的用户准备的,他们只是期待更多的重大突破。由于使用了新版的 V8 引擎,所有的原生附加组件都需要被重新编译,官方声明中完整列举所有的特性变更。

Atom 1.1

此次发布是继Beta 通道之后的首个版本。Atom 团队决定在主通道的基础上再引入两个新通道来处理代码回归问题,它们分别是 Beta 通道和 Stable 通道。如果只使用一套代码库,就可以直接由这套代码生成每一个发布版,这种代码维护模型简单,所需开销很小,但是一旦当代码公开发布后发现了问题将会造成很大的问题:首先需要回滚新版本,然后解决问题,最后再发布一个新的镜像,随之而来的问题是,在初始发布后到回滚前的这段时间内代码库会增加很多未测试的新特性,而再次发布的代码则会包含这段代码。团队决定引入分离通道并发布测试版本正是为了解决这个问题。

Atom 1.1 引入了一个测量字体的新方法,这种方法依然基于 DOM,但却使用了一种更可控的方法。字体测量过程曾经让 IDE 变得缓慢无比,所以这一改变是人们迫切需要的。新版本中针对 GC 暂停进行了最小化处理,当新内容需要渲染时不再总是创建新的节点,而是通过 DOM 元素重用来提升渲染性能。Atom 1.1 中的其它改进还有:强化模糊搜索,生成更优质的搜索结果;Markdown 预览支持安装的主题;以及其它几项修补。官方声明中列举了 Atom 最新版本中的所有增强功能。

查看英文原文:New Releases: Ceylon 1.2, Node.js 5.0 and Atom 1.1

JavaScriptNode.js语言 & 开发