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 點贊哦!
筆者將持續更新更多技術乾貨、技術知識及最新技術動態!