Kotlin 的背景
Kotlin 是一门基于 JVM 且与 JAVA 可 100% 互通的编程语言Kotlin 的优势
简洁:大大减少样板代码数量
使用一行代码创建一个包含 getters / setters / equals() / hashCode() / toString() 以及 copy() 的 POJO:
data class Customer(val name: String, val email: String, val company: String)
或者使用 lambda 表达式来过滤列表:
val positiveNumbers = list.filter { it > 0 }
想要单例?创建一个 object 就可以了:
object ThisIsASingleton { val companyName: String = "JetBrains" }
彻底告别著名的十亿美金的错误:NullPointerException。
var output: String output = null // 编译错误
Kotlin 可以保护你避免对可空类型的误操作
val name: String? = null // 可控类型 println(name.length()) // 编译错误
并且如果你检查类型是正确的,编译器会为你做自动类型转换
fun calculateTotal(obj: Any) { if (obj is Invoice) obj.calculateTotal() }
互操性好:充分利用JVM、Android和浏览器的现有库。
使用 JVM 上的任何现有库,因为有100% 的兼容性,包括 SAM 支持。
import io.reactivex.Flowable import io.reactivex.schedulers.Schedulers Flowable .fromCallable { Thread.sleep(1000) // 模仿高开销的计算 "Done" } .subscribeOn(Schedulers.io()) .observeOn(Schedulers.single()) .subscribe(::println, Throwable::printStackTrace)
无论是 JVM 还是 JavaScript 目标平台,都可用 Kotlin 写代码然后部署到你想要的地方
import kotlin.browser.window
fun onLoad() {
window.document.body!!.innerHTML += "
Hello, Kotlin!"
}
工具友好:可用任何Java IDE 或者使用命令行构建
Koltin 的前景
目前移动端依然把持流量入口,热度不减,市场依旧很大,Kotlin 也已成为 Google 新儿子,是 Android 官方支持的首选开发语言,BAT 等国内外一线互联网公司都已在线上项目中积极使用,它确实极大提升了开发效率、系统安全性同时有极高互通性,是一门潜力较高的编程语言——必须掌握,以备不时之需!
PS:如果本文对您有帮助,请关注 or 点赞哦!
笔者将持续更新更多技术干货、技术知识及最新技术动态!