【IT168 资讯】近日,Kotlin团队发布了Kotlin 1.2。这是一个重要的新版本,也是迈向在现代应用程序所有组件中使用Kotlin道路的一大步。
在Kotlin 1.1中,团队正式发布了JavaScript目标,允许开发者将Kotlin代码编译为JS并在浏览器中运行。在Kotlin 1.2中,团队增加了在JVM和JavaScript之间重用代码的可能性。现在,开发者可以一次性编写应用程序的业务逻辑,并在应用程序的所有层(后端,浏览器前端和Android移动应用程序)中重复使用。Kotlin团队也在研究库,以帮助开发者重用更多代码,例如跨平台的序列化库。
Kotlin 1.2已经捆绑在本周发布的IntelliJ IDEA 2017.3中。如果使用Android Studio或旧版本的IntelliJ IDEA,则可以从 Tools | Kotlin | Configure Kotlin Plugin Updates对话框中更新。
该版本包含了很多外部贡献者所做的工作,团队感谢所有发送反馈,报告问题的开发者,特别是那些提交过请求的人。
跨平台项目
跨平台项目允许开发者从相同的代码库构建应用程序的多个层——后端、前端和Android应用程序。这样的项目包含了独立于平台的代码通用模块,以及特定平台(JVM或JS)代码的平台特定模块,并且可以使用平台特定的库。要从通用模块中调用特定于平台的代码,可以指定所需的声明——所有特定于平台的模块需要提供实际实现声明。
如前所述,我们也在研究一系列通用库,以便将更多逻辑转移到通用代码中:
·kotlin.test包含在Kotlin 1.2中开箱即用,可以让开发者编写一次测试,并在JVM和JS下运行;
·kotlinx.html支持同构渲染——使用相同的代码在后端和前端渲染HTML;
·kotlinx.serialization允许使用JSON或ProtoBuf作为序列化格式,轻松地在应用程序的不同层之间编排Kotlin对象。
请注意,目前跨平台项目只是一个实验性功能,这意味着该功能已经可以使用,但可能需要在后续版本中更改设计(如果这样做,将为现有代码提供迁移工具)。
编译性能显著提高
在1.2的开发过程中,团队花了很多精力来使编译过程更快。与Kotlin 1.1相比,已经达到了大约25%的性能提升,并且看到了可以进一步改进的巨大潜力,这些改进将在1.2.x更新中发布。
下图显示了使用Kotlin构建两个大型JetBrains项目的编译时间差异:
其他语言和库的改进
·团队还对语言和标准库进行了一些较小的改进:
·用于将多个参数传递给注释(数组文字)的更简洁语法;
·支持顶级属性和本地变量的lateinit修饰符,以及检查是否初始化了一个lateinit变量;
·在某些情况下,智能模型和改进的类型推断;
·引入了有拆分包限制的标准库与Java 9兼容;
·标准库中的新kotlin.math包;
·用于处理序列和集合的新标准库函数,包括用于将集合或序列分解为可重叠的固定大小的一组函数。
Kotlin遍布世界各地
自从Kotlin 1.1在今年3月份发布以来,Kotlin在全球范围内获得了巨大成功。这是第一次全球会议KotlinConf的成果,约有1200名与会者在11月2日至3日在旧金山聚会。该团队已经记录了所有谈话,并且视频现在可用。
Kotlin现在是一个官方支持的Android开发语言,在Android Studio 3.0中提供了开箱即用的支持,以及由Google发布的官方示例和样式指南。因此,Kotlin已经在Android Studio 3.0超过17%的项目中使用,其中包括来自最热门初创公司和财富500强公司的许多应用程序。
在服务器端,Spring Framework 5.0已经发布了很多Kotlin的支持特性,Vert.x自3.4.0发布以来一直支持Kotlin。此外,Gradle现在也支持Kotlin DSL,Gradle Kotlin DSL项目正在迅速接近1.0版本。
GitHub上开源Kotlin代码的行数已经超过了2500万。在Stack Overflow上,Kotlin既是增长最快的语言,也是最受欢迎的语言之一。
Kotlin的社区也非常棒,来自世界各地100多个用户组织正在积极传播Kotlin的使用。
#p#分页标题#e#
对于那些刚刚开始学习Kotlin的人来说,有越来越多的书籍(包括“Kotlin in Action”,现在有英文,俄文,日文,中文和葡萄牙文版本),在线课程,教程和其他资源。
如何升级
与往常一样,开发者可以在try.kotlinlang.org在线尝试升级Kotlin。
·在Maven,Gradle和npm中:使用1.2.0作为编译器和标准库的版本号。
·在IntelliJ IDEA中:2017.3在早期版本中捆绑了Kotlin,可以将Kotlin插件安装或更新到版本1.2。
·在Android Studio中:通过插件管理器安装或更新插件。
·在Eclipse中:使用Marketplace安装插件。
·可以从Github发布页面下载命令行编译器。
·兼容性。在Kotlin 1.2中,语言和标准库是向后兼容的:如果编译和运行的是1.0或1.1,它在1.2版本中照例可以正常运行。为了帮助逐渐更新的大型团队,团队提供了一个禁用新功能的编译器开关。