Kotlin概述之Kotlin for Android
2017-05-20 本文已影响42人
已迁至知乎_此不再维护
Kotlin非常适合开发Android应用,在综合了现代各种编程语言的所有优点的同时,没有引入新的限制:
- 兼容性:Kotlin完全兼容JDK6,确保使用Kotlin编写的应用毫无压力的在早版本的Android设备上运行。Kotlin工具在Android Studio中完全支持,与Android构建系统兼容。
- 性能:Kotlin应用与Java应用有着相同的运行速度,得益于它们有着极为相似的字节码结构。因为Kotlin对内联函数的支持,使用Lambda表达式的代码甚至会快于使用Java编写的代码。
- 互通性:Kotlin与Java百分百互通,在Kotlin编写的应用中,可以使用已经存在的所有Android库。包括注解库,数据绑定(databinding)和依赖注入(Dagger)。
- 轻量级:Kotlin有一个非常简洁的运行库,通过使用ProGuard可以进一步缩减。在真实的应用程序中,Kotlin运行时只添加了几百种方法,并且小于等于100K的.apk文件的大小。
- 编译时间:Kotlin支持高效的增量编译,因此在清理构建方面还需要额外的开销,增量版本通常与Java一样快或更快。
- 学习曲线:对于Java开发者而言,上手Kotlin非常容易。Kotlin插件提供了将Java文件转换为Kotlin文件的功能。Kotlin Koans则通过一系列互动练习提供了语言的主要功能的指南。
使用Kotlin的Android案例
Kotlin已经成功地被一些知名的公司采用了,部分公司还分享了他们的经验:
- Pinterest公司已经成功地将Kotlin引入了他们的应用程序,每个月由150万人使用。
- Basecamp的Android应用程序是100%的Kotlin代码,他们反馈了程序员幸福的巨大差异,以及工作质量和速度的巨大改进。
- Keepsafe的App Lock应用程序也被转换为100%的Kotlin,导致源码数量减少30%,方法计数减少10%。
Android开发配套工具
Kotlin团队为Android开发提供了一套超越标准语言功能的工具:
- Kotlin Android Extensions对编译器进行了扩展,它可以让您摆脱代码中的findViewById(),并将其替换为编译器生成的属性。
- Anko库提供了一组基于Android API的Kotlin友好库,以及一个DSL。通过DSL,可以用Kotlin代码替换您的布局.xml文件。
您只需要
- 下载安装Android Studio 3.0,它内置了对Kotlin的支持。
- 通过Getting Started with Android and Kotlin系列教程,开始您的第一个Kotlin应用。
- 关于更深度的介绍,请关注官网的官方文档以及Kotlin Koans。
- 另一个重要的资源是Kotlin for Android Developers这本书,该书可以指导您完成在Kotlin中创建真正的Android应用程序的过程。
- 关注Google发布的用Kotlin编写的项目例子。