Kotlin 學習之認識 Google、JetBrains 與 Kotlin 的關係!

Kotlin 的背景

  • Kotlin 是一門基於 JVM 且與 JAVA 可 100% 互通的編程語言,用 JetBrains 的話來說 Kotlin 是更『現代化、更強大』的編程語言。
  • Kotlin 由 JetBrains 在 2010 年開發,2011 年開源至 GitHub ,2016 年發佈 1.0 版。 源碼地址:https://github.com/JetBrains/kotlin 。
  • Google Android 團隊與 JetBrains 的關係不一般。Android Studio 由 Google 研發、維護,但它基於 JetBrains 開發的 IntelliJ IDEA 社區版。
  • Google 和 JetBrains 將為 Kotlin 成立一個非盈利基金會。Kotlin 語言的開發,還是 JB 為主導。
  • Andrey Breslav 是 Kotlin 語言的首席設計師。
  • JetBrains 對 Kotlin 的願景是:用同一種語言,橋接多平臺的不同應用的端對端開發。包括全棧 Web 應用、Android 和 iOS 客戶端、嵌入式/物聯網等等。(Kotlin 與 Java 100% 互通,並具備諸多 Java 尚不支持的新特性。)
  • Android Studio 3.0 預覽版已支持 Kotlin。下載 AS 3.0 預覽版後,打開現有的 Java 文件,在「Code」菜單中選擇「Convert Java File to Kotlin File」。AS 會添加 Kotlin 依賴,然後把 Java 代碼轉成同等功能的 Kotlin 代碼。
  • Kotlin 易於上手,可以逐步引入到現有項目中。這意味著安卓開發者目前現有的技能和技術積累、投資並沒有浪費。

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 或者使用命令行構建

Kotlin 學習之認識 Google、JetBrains 與 Kotlin 的關係!

Kotlin 學習之認識 Google、JetBrains 與 Kotlin 的關係!

Koltin 的前景

目前移動端依然把持流量入口,熱度不減,市場依舊很大,Kotlin 也已成為 Google 新兒子,是 Android 官方支持的首選開發語言,BAT 等國內外一線互聯網公司都已在線上項目中積極使用,它確實極大提升了開發效率、系統安全性同時有極高互通性,是一門潛力較高的編程語言——必須掌握,以備不時之需!

PS:如果本文對您有幫助,請關注 or 點贊哦!

筆者將持續更新更多技術乾貨技術知識最新技術動態

Kotlin 學習之認識 Google、JetBrains 與 Kotlin 的關係!


分享到:


相關文章: