這個程式碼研究室是「程式設計人員的 Kotlin 新手上路課程」的一部分。如果您按部就班完成程式碼研究室,就能充分體驗到本課程的價值。視您的知識多寡而定,您或許能略過某些部分。本課程適用於熟悉物件導向語言,且想學習 Kotlin 的程式設計師。
簡介
程式設計人員的 Kotlin 新手上路課程會教您 Kotlin 程式設計語言。在本程式碼研究室中,您將瞭解使用 Kotlin 程式設計語言的優點,並安裝 IDE,為第一堂課做好準備。
本課程適用於熟悉物件導向語言,且想進一步瞭解 Kotlin 的程式設計師。如果您熟悉 C#,對於 Kotlin 的某些功能也一定不會陌生。如果您主要熟悉 Java 程式設計語言,可能會驚訝於程式碼的簡潔程度和可讀性。
自 2017 年起,Google 正式支援使用 Kotlin 開發 Android 應用程式。請參閱 Android 開發人員網誌的公告。本課程內容是「Android Kotlin 基礎知識」課程的先修課程。
必備知識
您必須已經熟悉下列項目:
- 現代物件導向靜態型別程式設計語言 (例如 Java 或 C#) 的基礎知識
- 至少一種語言的類別、方法和例外狀況處理程式設計
- 使用 IntelliJ IDEA、Android Studio、Eclipse 或 Visual Studio 等 IDE
課程內容
- 如何使用 Kotlin REPL (Read-Eval-Print Loop) 互動式殼層
- Kotlin 程式碼的基本語法
學習內容
- 安裝 Java 開發套件 (JDK) 和 IntelliJ IDEA,並熟悉一些 Kotlin 功能。
Kotlin 是由程式設計人員為程式設計人員打造的全新現代程式設計語言。著重於清楚、簡潔和程式碼安全。
強大的程式碼
Kotlin 創作者針對這門語言做出各種設計決策,協助程式設計師建立穩固的程式碼。舉例來說,軟體中的空指標例外狀況造成了財務損失和電腦當機,並導致無數小時的偵錯。因此 Kotlin 會區分可為空值和不可為空值的資料型別,有助於在編譯時偵測更多錯誤。Kotlin 是強型別語言,可從程式碼推斷型別。Kotlin 具有 Lambda、協同程式和屬性,可讓您編寫較少的程式碼,減少錯誤。
成熟平台
Kotlin 自 2011 年推出以來,於 2012 年發布為開放原始碼。Kotlin 在 2016 年推出 1.0 版,並於 2017 年成為官方支援的 Android 應用程式建構語言。IntelliJ IDEA 和 Android Studio 3.0 以上版本都包含這項功能。
簡潔易讀的程式碼
以 Kotlin 編寫的程式碼非常簡潔,而且這門語言的設計宗旨是消除樣板程式碼,例如 getter 和 setter。舉例來說,請看以下 Java 程式碼:
public class Aquarium {
private int mTemperature;
public Aquarium() { }
public int getTemperature() {
return mTemperature;
}
public void setTemperature(int mTemperature) {
this.mTemperature = mTemperature;
}
@Override
public String toString() {
return "Aquarium{" +
"mTemperature=" + mTemperature +
'}';
}
}
在 Kotlin 中,可以簡潔地編寫如下:
class Aquarium (var temperature: Int = 0)
有時簡潔和可讀性這兩個目標會互相衝突。Kotlin 的設計宗旨是使用「足夠的樣板程式碼」,確保可讀性,同時保持簡潔。
可與 Java 互通
Kotlin 程式碼編譯後,您就能並行使用 Java 和 Kotlin 程式碼,並繼續使用慣用的 Java 程式庫。您可以將 Kotlin 程式碼新增至現有的 Java 程式,也可以使用 IntelliJ IDEA 和 Android Studio 內建的工具,將現有的 Java 程式碼遷移至 Kotlin 程式碼,完全遷移程式。
如果電腦上尚未安裝最新版 JDK,請按照下列步驟操作。您必須安裝 JDK,才能執行 Kotlin 程式。
如要查看已安裝的 JDK 版本 (如有),請在終端機視窗中輸入 javac -version
。
javac -version
您可以在「Java SE Downloads」頁面查看最新版 JDK。如果已是最新版本,請直接跳到「安裝 IntelliJ IDEA」。
步驟 1:解除安裝所有舊版 JDK/JRE
安裝最新版本前,請先移除所有舊版 JDK:
- 如果是 Windows,請依序選取「控制台」 >「新增/移除程式」。
- 如需 Mac 操作說明,請參閱「解除安裝 JDK」。
如要進一步瞭解如何解除安裝舊版 JRE,請參閱「如何在 Mac 上解除安裝 Java?」或「如何在 Windows 電腦上解除安裝 Java?」。
步驟 2:下載 JDK
您可以在這裡免費下載 JDK:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
- 按一下最新 Java SE 版本 JDK 下方的「下載」按鈕。
- 選取「接受授權協議」。
- 選擇適用於您作業系統的 JDK。
步驟 3:安裝 JDK (適用於 Mac)
在瀏覽器的「下載」視窗或檔案瀏覽器中,按兩下 .dmg
檔案,啟動安裝檔案。
- 系統會顯示「Finder」視窗,內含開啟的方塊圖示和
.pkg
檔案名稱。 - 按兩下套件圖示啟動安裝應用程式,然後按照畫面上的提示操作。
- 你可能需要輸入管理員密碼才能繼續。
- 安裝完成後,您可以刪除
.dmg
檔案來節省空間。
步驟 3:安裝 JDK 和 JRE (適用於 Windows)
- 執行下載的安裝程式 (例如
jdk-12_windows-x64_bin.exe
),安裝 JDK 和 JRE。根據預設,JDK 會安裝在C:\Program Files\Java\jdk-12
目錄中。JRE 會安裝在C:\Program Files\Java\jre1.8.0_x
中,其中x
表示版本號碼。 - 接受預設值,然後按照畫面上的指示安裝 JDK。
步驟 4:將 JDK 和 JRE 安裝目錄新增至 PATH (僅限 Windows)
Windows 會在目前目錄和 PATH
環境變數 (系統變數) 中列出的目錄中,搜尋可執行程式。
- 依序開啟「控制台」 >「系統」 >「進階系統設定」 >「環境變數」。
- 在「系統變數」下方,按一下「新增」,然後新增名為
JAVA_HOME
的變數,並將 JRE 的目錄設為值。例如C:\Program Files\Java\jre1.8.0_x
,其中x
是版本號碼。 - 在「系統變數」下方,向下捲動並選取「路徑」,然後按一下「編輯」。
- 將 JRE 的
bin
目錄加到Path
的開頭,後面加上半形分號:%JAVA_HOME%\bin;
- 在
Path
結尾附加 JDK 的bin
目錄,並在前面加上半形分號。例如:;C:\Program Files\Java\jdk-12\bin
。
步驟 5:驗證 JDK 安裝作業
- 如要確認 JDK 是否已正確安裝,請在終端機視窗中輸入下列指令:
java -version javac -version
步驟 1:下載並安裝 IntelliJ IDEA
根據您的作業系統下載 IntelliJ IDEA。
Windows:
- 執行您下載的
ideaIC.exe
檔案。 - 按照安裝精靈中的指示操作。
Mac:
- 如要掛接 macOS 磁碟映像檔,請在下載的
ideaIC.dmg
檔案上按兩下。 - 將「IntelliJ IDEA」複製到「Applications」資料夾。
Linux:
- 請在下載的
.tar.gz
檔案中查看Install-Linux-tar.txt
。
如要進一步瞭解如何安裝及設定 IntelliJ IDEA,請參閱「安裝 IntelliJ IDEA」。
步驟 2:驗證 IntelliJ IDEA 安裝作業
- 啟動 IntelliJ IDEA。
- 按照提示安裝所有更新和其他內容。
- 依序選取「設定」 >「檢查更新」,直到沒有可用的更新為止。
建立 Kotlin 專案,讓 IntelliJ IDEA 知道您要使用 Kotlin。
- 在「Welcome to IntelliJ IDEA」視窗中,按一下「Create New Project」。
- 在「New Project」窗格中,選取左側導覽中的「Kotlin」。
- 在右側面板中選取「Kotlin/JVM」,然後點選「Next」。
- 為專案命名
Hello Kotlin
。 - 按一下「完成」。
現在您可以存取 REPL (Read-Eval-Print Loop),也就是 Kotlin 的互動式殼層。只要按下 Control+Enter
鍵 (Mac 上為 Command+Enter
鍵),系統就會解譯您在 REPL 中輸入的指令。
- 依序選取「Tools」 >「Kotlin」 >「Kotlin REPL」,開啟 REPL。
- 在 REPL 中輸入或貼上下列程式碼。
fun printHello() {
println("Hello World")
}
printHello()
- 按下
Control+Enter
鍵 (Mac 則為Command+Enter
鍵)。您應該會看到Hello World
,如下所示。
- 請快速瀏覽這段 Kotlin 程式碼。
fun
關鍵字會指定函式,後接名稱。與其他程式設計語言一樣,括號用於函式引數 (如有),大括號則用於函式的程式碼。由於函式不會傳回任何內容,因此沒有傳回型別。另請注意,行尾沒有半形分號。
恭喜!您已編寫第一個 Kotlin 程式。
- Kotlin 與其他物件導向程式設計語言類似。
- 如要使用 Kotlin,請為作業系統安裝最新版 JDK。
- 安裝 IntelliJ IDEA,以便使用 Kotlin。
- 在 IntelliJ IDEA 中啟動 Kotlin REPL (依序點選「Tools」>「Kotlin」>「Kotlin REPL」),在互動式殼層中練習。
- 輸入程式碼,然後按下
Control+Enter
鍵 (Mac 上的Command+Enter
鍵) 執行程式碼。 - 以下是 Kotlin 中的「Hello World」:
fun printHello() {
println ("Hello World")
}
printHello()
Kotlin 說明文件
如要進一步瞭解本課程的任何主題,或遇到問題,請前往 https://kotlinlang.org。
Kotlin 教學課程
https://try.kotlinlang.org 網站提供豐富的教學課程 (稱為 Kotlin Koans)、網頁式解譯器,以及附有範例的完整參考文件。
Udacity 課程
如要查看這個主題的 Udacity 課程,請參閱「程式設計人員的 Kotlin 新手上路課程」。
IntelliJ IDEA
IntelliJ IDEA 的說明文件位於 JetBrains 網站。
本節列出的作業可由課程講師指派給學習本程式碼研究室的學員。講師可自由採取以下行動:
- 視需要指派作業。
- 告知學員如何繳交作業。
- 為作業評分。
講師可以視需求使用全部或部分建議內容,也可以自由指派任何其他合適的作業。
如果您是自行學習本程式碼研究室,不妨利用這些作業驗收學習成果。
回答問題
第 1 題
下列何者「不是」使用 Kotlin 語言的優點?
▢ Kotlin 會區分可為空值和不可為空值的資料類型。
▢ Kotlin 是建構 Android 應用程式的支援語言。
▢ Kotlin 的設計宗旨是讓您編寫更少的程式碼,減少錯誤。
▢ Kotlin 可加快程式碼編譯速度。
第 2 題
如何啟動 Kotlin REPL?
▢ 在指令列中輸入 repl
。
▢ 在 IntelliJ IDEA 中建立 Kotlin 專案,然後依序選取「Run」>「Kotlin REPL」。
▢ 開啟 IntelliJ IDEA,然後選取「File」>「Kotlin REPL」。
▢ 在 IntelliJ IDEA 中建立 Kotlin 專案,然後依序選取「Tools」>「Kotlin」>「Kotlin REPL」。
第 3 題
下列有關 Kotlin 和 Java 程式碼的敘述何者不正確?
▢ Kotlin 程式碼和 Java 程式碼可以並行執行。
▢ 您可以在現有的 Java 程式中新增 Kotlin 程式碼。
▢ 您可以將現有 Java 程式碼遷移至 Kotlin。
▢ Kotlin 程式碼的執行速度會比 Java 程式碼更快。
繼續下一個課程:
如要查看課程總覽,包括其他程式碼研究室的連結,請參閱「程式設計人員的 Kotlin 新手上路課程:歡迎參加本課程。」