Android 中的 Kotlin 常見問題

為什麼 Android 能讓 Kotlin 成為一流的支援語言?

Kotlin 是與 Android 相容的語言,既簡潔扼要,又意涵豐富,而且設計為對類型和空值無威脅。Kotlin 可與 Java 語言完美互通,讓喜歡 Java 語言的開發人員既能繼續使用使用 Java,又能逐漸新增 Kotlin 程式碼,並充分利用 Kotlin 程式庫。此外,許多 Android 開發人員也發現,Kotlin 既加快了開發速度,也使開發作業更有趣,因此我們希望更好地支援這些 Kotlin 使用者。進一步瞭解 「Android 的以 Kotlin 優先法」

如何搭配 Android Studio 使用 Kotlin?

Android Studio 完全支援 Kotlin。Android Studio 的所有新版本都支援透過 Kotlin 檔案建立新專案,將 Java 語言程式碼轉換為 Kotlin 程式碼,對 Kotlin 程式碼偵錯等等。

如何在 Android Studio 中對 Kotlin 偵錯?

對 Kotlin 偵錯,其做法與對 Java 程式碼偵錯無異。你無須另外採取行動。

Kotlin 還獲得哪些 IDE 支援 (例如 Lint、自動完成和重構)?

自 Android Studio 3.0 起,IDE 為 Kotlin 提供全面的工具支援。但我們正努力解決一些已知問題和限制

Kotlin 的前景如何?

JetBrains 在 Kotlin 的設計上巧盡心思,這是我們接受這種語言的原因之一。Google 與 JetBrains 攜手合作,從語言、架構到工具,均確保開發人員獲得愉悅的整體體驗。我們很高興兩家公司能攜手合作,將 Kotlin 語言變成一家非營利的基金會。

Kotlin 是否為開放原始碼?

Kotlin 偏好的授權是 Apache 軟體授權 2.0 版 (「Apache 2.0」),而 Kotlin 軟體的大部分功能也取得了該授權。雖然該專案會盡力遵循偏好的授權,但可能會遇到例外狀況,所以要視案件而處理。例如,Kotlin 使用的某些第三方依附元件可能會依不同的開放原始碼授權進行授權,而這些授權仍與 Apache 2 授權相容。

Java 語言和 Kotlin 語言,如何取捨?

你無須取捨!您可以視需要同時使用這兩種語言。如果您不確定 Kotlin 是否適合您,可以在 Android 上試用,或透過這些 Kotlin 資源進一步瞭解這種語言。

是否可透過 Kotlin 呼叫 Android 或其他 Java 語言程式庫 API?

可以。Kotlin 與 Java 語言互通。這項設計可讓 Kotlin 程式碼以透明的方式呼叫 Java 語言方法,結合註解後,可讓您輕鬆向 Java 程式碼公開 Kotlin 專屬功能。Kotlin 檔案如果不使用任何 Kotlin 專用語意,則可以直接從 Java 程式碼參照,完全不需要任何註解。結合註解後,您可以逐漸混合 Java 程式碼與 Kotlin 程式碼。詳情請參閱 Kotlin 的互通性說明文件

是否有適用於 Android API 的 Kotlin 參考文件?

有!我們正設法提供 Android API 說明文件和符合 Kotlin 語言習慣的參考資料。您可以在 Android 參考資料總覽頁面中找到可用的 Kotlin 參考文件連結。如需核心 Kotlin 語言參考資料,請參閱 Kotlin 標準程式庫參考資料

是否可在同一個專案中使用 Java 檔案和 Kotlin 檔案?

可以。您可以視需要採用 Kotlin 程式碼,並透過 Kotlin 與 Java 的互通性與 Java 程式碼搭配使用。

是否可搭配 C++ 使用 Kotlin?

可以,Kotlin 完全支援 JNI。請使用外部修飾詞標示 JNI 方法。

如何將 Kotlin 加入新的專案內?

在建立新專案時,Kotlin 如今是 Android Studio 的預設語言。詳情請參閱「建立專案」

如何將 Kotlin 加入現有專案內?

「專案」視窗中選取模組,然後依序選取「檔案」 > 「新增」,再選取任何一個 Android 範本,接著將「Kotlin」選為「來源語言」。詳情請參閱「將 Kotlin 新增至現有應用程式」

如何將 Java 語言程式碼轉換為 Kotlin?

開啟 Java 檔案,然後依序選取 「程式碼」 > 「將 Java 檔案轉換為 Kotlin 檔案」。您也可以建立新的 Kotlin 檔案 (「檔案」 > 「新增」 > 「Kotlin 檔案/類別」),然後將 Java 程式碼貼到該檔案中。系統顯示提示時,請點選「是」,以將程式碼轉換為 Kotlin。

Kotlin 中是否有平行文件、範例、程式碼研究室和範本?

我們致力於使說明文件和教學資料盡量適合 Java 和 Kotlin 語言的使用者使用。同時,開發人員可以利用 Kotlin 與 Java 語言卓越的互通性,以及在 Android Studio 中自動將 Java 語言程式碼翻譯成 Kotlin 的功能。

Android 是否支援 Kotlin 協同程式?是否可非同步/等待?

Kotlin 協同程式可在 Kotlin 1.3 以上版本中穩定執行,在 Android 上也正常執行。如要進一步瞭解如何搭配 Android 使用協同程式,請參閱「使用 Kotlin 協同程式提升應用程式效能」

使用 Kotlin 是否會造成任何效能影響?

Kotlin 不會對效能造成直接影響,但如同 Java 語言一樣,請仔細考慮 Kotlin 的使用方式。例如,在新的集合執行個體之間重複複製,可能會影響 GC 效能,而呼叫可接受非空值類型的方法,會為空值檢查新增方法呼叫 (您可透過 -Xno-param-assertions 停用編譯器內的執行階段空值檢查)。

Kotlin 支援哪些 Android 版本?

所有版本!Kotlin 與 JDK 6 相容,因此採用 Kotlin 的應用程式可以安全地在較低的 Android 版本上執行。

可以在哪裡進一步瞭解如何使用 Kotlin?

請參閱其他 Kotlin 資源