【AICon】探索八个行业创新案例,教你在教育、金融、医疗、法律等领域实践大模型技术! >>> 了解详情
写点什么

Kotlin 1.1 路线图

  • 2016-06-12
  • 本文字数:932 字

    阅读完需:约 3 分钟

Kotlin 的开发正向着 1.1 版本迈进;Kotlin 语言主要设计者 Andrey Breslav介绍了JetBrains 这门JVM 语言新版本的路线图,该版本会包含重大的新语言特性。

Kotlin 1.1 将提供以下新语言特性。

  • 类型别名旨在为比较长的类型声明提供一种缩写机制,比如函数签名;类型别名不会引入新的类型,可以与原始定义互换使用。
  • 扩展 **绑定方法引用 **,支持引用对象成员。这样,你就可以引用String对象的equals方法,并赋给一个 Predicate 对象供后续使用:val p: Predicate<String> =“foo”::equals。Kotlin 1.0.x 已经支持类型引用。
  • 允许在类或函数的最顶层定义 **委托属性 **: ```
    fun foo() {
    val lazyBar by lazy { … }
    while (…) {
    if (…) {
    lazyBar.doBaz()

    }
    }
    }
复制代码
委托属性提供了一种机制,可以一次性实现所有像 lazy、observable 和 map-stored 这样的特定类型的属性,这样就不需要每次都实现它们。
- **[数据类](https://kotlinlang.org/docs/reference/data-classes.html)** 将支持继承,这就提供了从另外一个类派生出一个数据类的可能。数据类是那些只包含数据的类,Kotlin 会自动生成存取器、`equals`、`hashCode`和其他通用方法。这还提供了在一个密封类中扩展数据类的可能: ```
sealed class C() {
data class Example(...) : C()
}
  • 解构允许为 lambdas 参数传递组合名称,参见下面的例子,forEach的键值对参数解构成了两个部分: ```
    myMap.forEach {
    (k, v) ->
    println(“$k => $v”)
    }
复制代码
- **coroutines** 是 Kotlin 异步行为的基础。据 Breslav 介绍,coroutines 比 C# 5 引入的`async/await`模型更一般化。Kotlin 也将提供`async/await`,但是以 coroutines 为基础构建,而不是作为原语: ```
fun loadImage(url: URL) = async {
val bytes = await(loadBytes(url))
bytesToImage(bytes)
}

在工具方面,Kotlin 1.1 将直接支持 Java 8/9 特性,如默认方法生成。此外,JavaScript 后端将与实际的语言功能集保持一致。

Kotlin 的开发由 Kotlin Evolution and Enhancement Process(KEEP)推动,并依托一个 GitHub 库描述了所有计划的应用场景。

Kotlin 1.1 的源代码和二进制文件都兼容以前的版本,也就是说,新版本的 Kotlin 编译器不会破坏同旧源代码和二进制文件的兼容性。

查看英文原文 The Roadmap to Kotlin 1.1

2016-06-12 19:002567
用户头像

发布了 1008 篇内容, 共 374.3 次阅读, 收获喜欢 341 次。

关注

评论

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

第三周-作业1

Mr_No爱学习

周练习 7

何毅曦

架构师训练营第一期 - 第七周课后作业

卖猪肉的大叔

极客大学架构师训练营

第三周-作业一

ray-arch

极客大学架构师训练营

架构师训练营 2 期 Week03 总结

架构师训练

Week_07 作业

golangboy

极客大学架构师训练营

计算机的时钟(四):TrueTime

ElvinYang

二期第三周作业

supersky6

策略模式

猴子胖胖

设计模式 Go 语言

架构师训练营第一期 - 第七周学习总结

卖猪肉的大叔

极客大学架构师训练营

模板方法模式

猴子胖胖

设计模式 Go 语言

架构师训练营第七周课后练习

薛凯

架构师训练营第 1 期第 7 周作业

好吃不贵

极客大学架构师训练营

week3- 请在草稿纸上手写一个单例模式的实现代码,拍照提交作业

未来已来

架构师训练营第七周学习总结

吴传禹

极客大学架构师训练营

架构师训练营第 1 期第 7 周学习总结

好吃不贵

极客大学架构师训练营

架构师训练营第七周作业

Shunyi

极客大学架构师训练营

第三周作业

jingx

架构师训练营week07作业

IT老兵重开始

第三周课后练习

刘洋

极客大学架构师训练营

架构师训练营第 1 期 - 第 7周 - 学习总结

wgl

装饰器模式

猴子胖胖

设计模式 Go 语言

科技与产业革命的历史性交汇期,光华工程科技奖名单上的AI排面

脑极体

第3周作业

Steven

极客大学架构师训练营

第7周作业

wanlinwang

极客大学架构师训练营

架构师训练营第 1 期 - 第 7 周 - 命题作业

wgl

架构师训练营第2期-第3周作业1

xiaomao

第三周作业总结

hunk

极客大学架构师训练营

第三周-总结

jizhi7

极客大学架构师训练营

架构师训练营第 1 期 -- 第七周作业

发酵的死神

极客大学架构师训练营

第三周-作业二

Mr_No爱学习

Kotlin 1.1路线图_Java_Sergio De Simone_InfoQ精选文章