概述
今天,Kotlin 官方部落格正式釋出了 Kotlin 1.3,還附帶了一些開源庫、構建工具和學習資源。以下是原文連結地址:Kotlin 1.3 Released with Coroutines, Kotlin/Native Beta, and more
根據官方的介紹,此次更新主要帶來了Kotlin / Native Beta、協程、多平臺程式碼複用和諸多的學習套件。在此次更新中,協程(Coroutines)特性已經穩定,它使得非阻塞程式碼易於讀寫,Kotlin 1.3 還帶來了 Kotlin / Native Beta,它可將 Kotlin 程式碼直接編譯為本機二進位制檔案,此外,Kotlin 的跨平臺功能將為 Android 和 iOS 應用程式等元件之間共享業務邏輯,伺服器也可以與 Web 和移動客戶端共享邏輯,而且多平臺庫讓日常的開發變得便捷。
最近,依據Stack Overflow 的一項調查顯示,約有 150 萬開發者使用了 Kolin 程式設計,是去年同期的兩倍,並且Kotlin在移動Android和Java後端開發有了較大的普及。目前,Kotlin 開源社群建立了很多優秀的庫,如 RxKotlin、mockito-kotlin、TornadoFX、Kodein 和ΛRROW。而諸如 Square’s Okio 和 LibreOffice 這樣的專案已經開始逐漸遷移到 Kotlin 上來,這些預示著 Kotlin 生態系統正逐漸走向成熟。
新特性解讀
根據官方文件的介紹,此次的的更新主要有以下幾個方面:
Coroutines
Coroutines 是 Kotlin 1.1 引入新的非同步 API,它是一個強大的工具,之前該特性一直處於試驗階段,而在最新的 1.3版本 中,Coroutines 語法和標準庫 API 都已穩定,你可以放心的使用它了。
詳情請閱讀:kotl.in/coroutines
Kotlin / Native Beta
Kotlin / Native 使用 LLVM 將 Kotlin 原始碼編譯為獨立的二進位制檔案(無需 VM),它適用於各種作業系統和 CPU 架構,包括 iOS、Linux、Windows、Mac 甚至 WebAssembly 和嵌入式系統(如 STM32),它具有全自動記憶體管理功能,支援與 C、Objective-C(和 Swift)互操作。
詳情請閱讀:kotlinlang.org/docs/refere…
多平臺專案和工具
Kotlin 團隊稱,能在所有平臺上執行是 Kotlin 的目標,但達成這個目標的前提是,得先在多平臺間實現程式碼共享,通過支援 JVM、Android、JavaScript 和 Native,Kotlin 現在已經可以處理現代應用程式的任何元件。雖然 Kotlin 的多平臺功能仍處於試驗階段,但 1.3 版本算是向前邁出了一大步。
Kotlin 1.3 還附帶了一組多平臺庫,涵蓋了 HTTP、序列化和協同管理等日常任務。編寫多平臺程式碼最簡單的方法是依賴這些庫,你還可以建立自己的多平臺庫,將特定平臺的依賴項包裝到通用 API 中。
詳情請閱讀:kotlinlang.org/docs/refere…
其他特性
其他的新特性主要有:
- 支援內聯類( inline classes)
- 支援無符號整型
- 支援 Kotlin/JS 增量編譯
- 標準庫支援擴充套件到 Kotlin / Native等