使用Kotlin開發Android應用

目標

本文旨在引導開發者使用Kotlin來開發Android應用。html

至於Kotlin語言的語法和教程等,不在本文討論範圍,請參考如下官網文檔和網上的開發教程。java

  1. kotlin-android
  2. 《Kotlin for android Developers》中文翻譯
  3. Kotlin-in-Chinese
  4. Kotlin 官方參考文檔 中文版
  5. Kotlin 官方文檔中文翻譯版

簡介

名詞解釋

Kotlin

Kotlin 是一個基於 JVM 的新的編程語言,由 JetBrains 開發。
Kotlin能夠編譯成Java字節碼,也能夠編譯成JavaScript,方便在沒有JVM的設備上運行。
JetBrains,做爲目前廣受歡迎的Java IDE IntelliJ 的提供商,在 Apache 許可下已經開源其Kotlin 編程語言。android

官方網站:http://kotlinlang.org/nginx

Github倉庫: https://github.com/JetBrains/kotlingit

教程

本節介紹如何使用Kotlin開發android應用。github

如下幾點須要謹記:編程

  1. 全部Kotlin類文件,以.kt爲後綴。
  2. Kotlin的源碼目錄規則和默認的是同樣的。分別放在src/main/kotlin, src/test/kotlin, src/androidTest/kotlin 和任意的src/${buildVariant}/kotlin。

Kotlin and Java

使用Kotlin來開發android,須要通過如下幾個步驟進行配置。
1.在項目根目錄下的build.gradle文件中添加如下代碼:安全

buildscript { ext.kotlin_version = '1.0.1-2' repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.1.2' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } }

2.在模塊目錄下的build.gradle文件中添加如下代碼:app

apply plugin: 'kotlin-android' apply plugin: 'kotlin-android-extensions' dependencies { compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" }

3.配置完成,你能夠在src/main/kotlin目錄下愉快地使用Kotlin來寫Android應用了。編程語言

實例展現:

  1. https://github.com/JetBrains/kotlin-examples
  2. https://github.com/snowdream/test/tree/master/android/kotlin/HelloWorld

Java 2 Kotlin

上面是手動給android項目增長kotlin支持。
其實還有一種自動轉換的方法,也能夠添加kotlin支持。

  1. 經過菜單「 Help | Find Action」或者快捷鍵「Ctrl+Shift+A」調出動做查詢窗口
  2. 輸入"Configure Kotlin in Project",回車,按照提示操做,便可添加Kotlin配置。
  3. 重複第一步,調出動做查詢窗口。輸入「Convert Java File to Kotlin File」。便可將現有的Java文件自動轉換成Kotlin文件。固然,若是隻想轉換某一個java文件,方法就是,打開改Java文件,而後選擇菜單「 Code | Convert Java File to Kotlin File」,便可將當前打開的Java文件自動轉換成Kotlin文件。
  4. 轉換完成。

總結

根據Kotlin官網描述,Kotlin是一種適用於JVM,Android
根據我的的開發實踐,總結出使用Kotlin開發Android應用的優缺點:

優勢

  1. 和Java相比,更簡潔,更安全。
  2. 和Java無縫集成,官網宣稱kotlin能夠100%和java混合使用。
  3. 由jetbrains推出,Idea能夠更好的進行支持。

缺點

  1. 會將支持kotlin的相關jar包打散,打包到apk中。這部份內容最終會給apk增長700k左右的大小。這個和前面的groovy相比,狀況要好不少,勉強仍是能夠接受的。
  2. 和java相比,使用Kotlin的開發者還太少。
  3. 誕生時間較晚,有待時間的檢驗。

結論

  1. 使用Kotlin是能夠更快,更有效地開發Android應用的。
  2. 在應用於生產實踐以前,還須要更多的評估,包括穩定性,運行效率,耗電量,兼容性,研發的接受程度等。

參考

    1. Kotlin名詞解釋
    2. Kotlin官網
    3. kotlins-android-roadmap
    4. Getting started with Android and Kotlin
    5. Kotlin Android Extensions
    6. kotlin-examples
    7. HelloWorld
    8. 如何評價 Kotlin 語言
    9. Kotlin:Android世界的Swift
    10. 初見Kotlin
    11. Android開發中使用kotlin你遇到過哪些坑?
相關文章
相關標籤/搜索