使用Kotlin進行Android開發

Kotlin非常適合開發Android應用程序,將現代語言的所有優勢帶入Android平臺,無需引入任何新的限制:

  • 兼容性:Kotlin與JDK 6完全兼容,確保Kotlin應用程序可以在較舊的Android設備上運行,無任何問題。 Kotlin工具在Android Studio中完全支持,與Android構建系統兼容。

  • 性能:Kotlin應用程序運行速度與Java類似,非常類似的字節碼結構。 隨着Kotlin對內聯函數的支持,使用lambdas的代碼通常比使用Java編寫的代碼運行得更快。

  • 互操作性:Kotlin可與Java進行100%互操作,允許在Kotlin應用程序中使用所有現有的Android庫。 這包括註釋處理,所以數據綁定也是一樣。

  • 佔用空間:Kotlin有一個非常緊湊的運行時庫,可以通過使用ProGuard進一步減少。 在真實的應用程序中,Kotlin運行時只添加了幾百種方法,並且.apk文件的也只是小於或等於100K。

  • 編譯時間: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和DSL的一組Kotlin友好的包裝器,可以用Kotlin代碼替換layout .xml文件。