技术开发 频道

使用有惊喜!Kotlin1.1.4新功能一览

  【IT168 编译】Kotlin 1.1.4有很多的惊喜,它修复了IntelliJ IDEA插件中的一个主要性能问题,并为IntelliJ IDEA插件添加了许多新功能。而且还包含有一个用于JavaScript死代码消除和支持Java 9改进的工具。

使用有惊喜!Kotlin1.1.4新功能一览

  Kotlin1.1.4亮点

  JetBrains的首席工程师德米特里·杰梅罗夫(Dmitry Jemerov)在一篇博文中透露, Kotlin 1.1.4的主要亮点:

  修复了IntelliJ IDEA插件中的主要性能回归;

  添加对package-default可空性注解的支持;

  改善Java 9的支持;

  添加使用@Parcelize注释生成Android Parcelable的初始支持;

  添加一个用于JavaScript死代码消除的工具,提高对JS调试和JS单元测试的源映射支持;

  生成更高效的字节码;

  为IntelliJ IDEA插件添加了许多新功能

  Kotlin现在支持package-default可空性注释(如JSR-305 @ParametersAreNonnullByDefault和@NonNullApi Spring Framework 5.0中引用的注释)。

  默认情况下,为了避免编译错误,这种注释的支持是关闭的。因为使用Java API更精确的可空性信息,必须通过将-Xjsr305-annotations=enable命令行选项传递给编译器来启用 。要在Gradle构建中启用此功能,需要使用 freeCompilerArgs option;在Maven构建需要使用 <args>。从1.1.4开始,Kotlin还会根据信息执行基于模块的可见性检查 module-info.java。

  就 Android Extensions插件而言,除了Activities 和Fragments之外,还支持自定义视图,自定义布局容器,如 ViewHolder 和 variants。但是,这些还是在实验阶段:

  androidExtensions {

  它是如何工作的呢?Jemerov表示,在主构造函数中声明序列化属性并添加 @Parcelize 注释,并且 writeToParcel()/ createFromParcel() 将自动创建:

  @Parcelize

  class User(val firstName: String, val lastName: String) : Parcelable

  Kotlin 1.1.4对IntelliJ IDEA插件进行了不少改进,例如:此版本还增加了一种新工具,可以消除由Kotlin / JS编译器生成的.js文件中的死代码。可惜的是,这个新工具目前仅支持Gradle版本。用户可以通过添加apply plugin: 'kotlin-dce-js'在build.gradle启用它 。

  1.修复 IDEA 插件中的主要性能回归

  2.重构Copy Class

  3.“Inline”重构支持属性访问器

  4.支持重命名标签

  5.代码样式设置中增添了许多新选项

  6.支持数据流分析

  7.“Configure Kotlin in project” 支持Gradle Kotlin DSL;

  8.更多新的检查和快速修复;

0
相关文章