Ceylon 1.1 带来了动态接口、使用点变型(use-site variance)、OSGi 与 Vert.x 部署、ceylon.promise``模块、IDE 提升、编译器性能提升以及其他特性。
Red Hat 的 Ceylon 项目负责人 Gavin King 宣布了 Ceylon 1.1 版本正式发布。除了编译器性能提升和前版 bug 修复以外,Ceylon 语言还带来了多个方面的大量新特性。
该语言得以进一步扩展,以支持如下新特性:
- 用于封装原生 JavaScript API 的动态接口;
- 使用点变型,提供与 Java 泛型之间的完整互操作性;
- 匿名函数参数的类型推断;
- 优化的 Byte 类。
遵循模块化原则,Ceylon 的.car 文件现在包含了 OSGi 和 Maven 元数据,因此现在就可以在 OSGi 容器中执行它们。Ceylon 模块还可以部署到 Vert.x 2.1.x。
IDE的增强特性有:
- 代码格式化器;
- 7 种重构代码新方式;
- 快速修复;
- 类似 IntelliJ 的“链式完成”;
- 新的资源管理器视图;
- JDT 快捷键;
- 快速查找引用、最近编辑文件、块格式化等等。
SDK 中添加了以下新模块:
- Promise:提供 Promise 的跨平台支持
- Locale:提供国际化支持
- Logging:一个日志 API
对于 Ceylon 未来的发展, Gavin King提出了以下路线图:
1.1.5**** 版本:
- 序列化,做得差不多了。这将允许“在基于 JavaScript 的客户端和基于 JVM 的服务端之间传递 Ceylon 对象”。
- 改进的 HTML 模块。可以同时为服务端和客户端编写 HTML 模版。
- 基于 Narayana 事务管理器的事务处理模块。
1.2**** 版本:
在此发布版中,King 计划解决下述问题:
- Java EE 集成。此项特性完成之后,各种框架就可以添加进来了
- UI 控件——数据模型绑定功能
- DB 查询语言
- 多元构造函数
尽管 Android 和 IntelliJ 支持是值得的,但 King 并未提供任何时间表。同时, King 对 Dart VM 持开放态度,但同样尚未做出任何决定。
查看英文原文: Ceylon 1.1: OSGi, Vert.x, Dynamic Interfaces, Use-site Variance, Promises
感谢臧秀涛对本文的审校。
给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。
评论