1. 事前準備
在本程式碼研究室中,您將使用可在瀏覽器執行的互動式編輯器,以 Kotlin 語言編寫第一個程式。
將「程式」想成一系列的指示,可讓系統執行某些動作。舉例來說,您可以編寫程式製作生日卡,並在該程式中編寫指示來顯示祝賀文字,或根據某人的出生年份計算年齡。
就像使用人類語言與他人溝通交流一樣,您也可以利用程式設計語言與電腦作業系統溝通交流。更棒的一點是,程式設計語言沒有人類語言那麼複雜,而且更具邏輯性!
Android 應用程式以 Kotlin 程式設計語言編寫而成。Kotlin 是一種現代化語言,可協助開發人員有效地編寫程式碼,盡量減少錯誤。
同時學習建立應用程式的方法和程式設計的基本知識並不容易,因此我們會先概略説明程式設計,再講解如何建構應用程式。先熟悉某些程式設計基本知識,不僅是建立應用程式的重要步驟,也會使未來在本課程中建立第一個應用程式更加輕鬆。
「程式碼編輯器」這項工具可協助您撰寫程式碼,就像文字處理器 (例如 Google 文件) 協助您建立文字文件一樣。在本程式碼研究室中,您要在瀏覽器中使用互動式 Kotlin 編輯器。也就是說,您不必安裝任何軟體,即可開始開發應用程式。
必要條件
- 在網路瀏覽器中使用互動式網站。
課程內容
- 如何建立、變更、瞭解並執行用於顯示訊息的精簡 Kotlin 程式。
建構項目
- 以 Kotlin 程式設計語言編寫的程式,執行時會顯示訊息。
需求條件
- 安裝了新式網路瀏覽器的電腦,例如最新版 Chrome。
- 電腦可以連上網際網路。
2. 在 Kotlin 中執行第一個程式
在這項工作中,您要使用網站上的編輯器,立即開始以 Kotlin 語言進行程式設計。
使用互動式程式碼編輯器
您可以使用網頁式工具來建立第一項程式,而不必在電腦上安裝軟體。
- 在瀏覽器中開啟 https://developer.android.com/training/kotlinplayground。系統會開啟使用瀏覽器的程式設計工具。
- 您應會看到類似以下螢幕截圖的頁面,頁面中間是程式碼編輯器。
以下是編輯器中的程式碼:
fun main() {
println("Hello, world!")
}
執行程式碼
執行您建立的程式,與在電腦上執行文字處理器等程式大同小異。不同之處在於,執行程式以完成工作或玩遊戲時,您主要關心程式可以為您做什麼,而不是使其運作的程式碼。編寫程式時,您會親眼看見並著手參與實現魔法的程式碼。
我們來看看這項程式的用途!
- 在編輯器的右上角,找到白色或綠色三角形 ,按一下即可執行程式。
- 查看底部的窗格。
Hello, world!
- 請注意顯示的
Hello, world!
,如上圖所示。現在,您已經瞭解這項程式的用途:這項程式可顯示或輸出一則 Hello World 訊息。
編譯是一項程序,可將 Kotlin 程式碼轉換為系統可執行的形式。如果成功完成編譯,表示程式中沒有會導致程式無法執行的錯誤。如果發生問題,問題會顯示在畫面底部的窗格。
3. 修改程式
變更 Hello World 程式碼
現在要稍微變更程式的用途。
- 將
"Hello, world!"
文字變更為"Happy Birthday!"
。 - 按一下右上角的藍色或綠色執行按鈕,即可執行程式。
- 畫面底部應會顯示
Happy Birthday!
,如下所示。
Happy Birthday!
運作方式
這是怎麼完成的?光是要顯示這一點字就已經要好多程式碼!
假設您想讓朋友在一張紙上寫下「Hello, world!」,以言語表達時會隱含很多資訊。如果您只是告訴他們「在這張紙上寫下 Hello world!」,他們會猜想您說這句話背後的意思。比方說,他們會假設自己需要使用筆,並且您希望他們用字母書寫!電腦無法進行這些假設,因此您需要提供每個步驟的確切說明。
就像英文有結構一樣,程式設計語言也是如此。如果您學過其他語言,就會知道要掌握文法、拼寫 (也許會接觸到新的符號字母表) 和字彙並不容易。學習程式也存在類似的挑戰,但幸運的是,它沒有學習英文等語言那樣複雜,也更具邏輯性。
瞭解程式的各個部分
現在,我們來看看程式碼。此程式的每個部分都是一個特定目的,而您需要瞭解所有部分,才能執行這個程式。我們先從第一個字詞開始。
fun
fun
是 Kotlin 程式設計語言中的字詞。fun
代表函式。函式是程式中用於執行特定工作的一部分。
fun main
main
是這個函式的名稱。函式具有名稱,因此可以彼此區別。此函式稱為main
,因為這是您執行程式時呼叫的第一個函式或主要函式。每項 Kotlin 程式都需要名為main
的函式。
fun main()
- 函式名稱後面一律加上兩個括號
()
。 - 您可以在括號中加入與該函式搭配使用的資訊。函式的輸入內容稱為「引數」,或簡短表示為
args
。稍後,您將進一步瞭解引數。
fun main() {}
- 請注意括號後方的大括號
{}
。函式內部是用於完成工作的程式碼。這些大括號括住了多行程式碼。
檢查大括號之間的程式碼:
println("Happy Birthday!")
這行程式碼會顯示 Happy Birthday!
文字。
println
會指示系統顯示一行文字。- 您可在括號內放置要顯示的文字。
- 請注意,要顯示的文字會以引號括住。這會指示系統準確顯示引號內的所有內容。
如要實際顯示文字,整個 println
指示都必須位於 main
函式中。
這就是最小的 Kotlin 程式。
fun main() {
println("Happy Birthday!")
}
4. 擴充程式
顯示多則訊息
做得好!您使用 println() function
顯示了一行文字。不過,您可以視需要在函式中加入不限行數的指示,以利完成工作。
- 請複製這行
println("Happy Birthday!")
並貼到下方兩次。請確定您貼上的行位於main
函式的大括號中。 - 將要顯示的文字之一變更為某人的名字,例如「Jhansi」。
- 將要顯示的其他文字變更為「You are 25!」。
程式碼應如下所示。
fun main() {
println("Happy Birthday!")
println("Jhansi")
println("You are 25!")
}
這個程式碼執行時,您希望它能產生什麼效果?
- 執行程式以瞭解其功能。
- 前往輸出窗格,控制台視窗中會顯示 3 行顯示的文字,如下圖所示。
Happy Birthday! Jhansi You are 25!
做得好!
處理錯誤
在程式設計期間出錯是很正常的,很多工具都會提供意見回饋,協助您修正錯誤。在這個步驟中,建立一項錯誤來瞭解具體情況。
- 在程式中,移除
Jhansi
文字兩邊的引號,讓該行程式碼如下所示。
println(Jhansi)
- 執行程式。您會看到顯示的
Jhansi
以紅色顯示,並且您變更的那行程式碼旁邊有一個驚歎號,以顯示何處出現了錯誤。 - 查看輸出窗格。窗格中會顯示含有相同驚嘆號圖示的訊息,接著說明程式碼中的錯誤。
- 「
Unresolved reference: Jhansi
」這則訊息可讓您瞭解系統認為程式碼發生錯誤的原因。即使不知道錯誤訊息的含義,或許也能找出問題所在。在這個案例中,您瞭解了println()
指示會顯示文字。此外,之前也學到文字必須位於引號之間。如果文字未加上引號,就會發生錯誤。 - 請重新加上引號。
- 請執行您的程式,確保能正常運作。
恭喜!您已經執行並變更了第一個 Kotlin 程式!
5. 解決方案程式碼
以下是您在本程式碼研究室中使用的完整程式碼。
fun main() {
println("Happy Birthday!")
println("Jhansi")
println("You are 25!")
}
6. 摘要
- https://developer.android.com/training/kotlinplayground 是互動式的網頁程式碼編輯器,可用於練習編寫 Kotlin 程式。
- 所有 Kotlin 程式都需要有
main()
函式:fun main() {}
- 請使用
println()
函式顯示一行文字。 - 將要顯示的文字置於雙引號之間。例如
"Hello"
。 - 重複
println()
指示以顯示多行文字。 - 在程式中,錯誤會標示為紅色。輸出窗格中會顯示錯誤訊息,可協助您找出錯誤發生的位置及可能原因。
7. 瞭解詳情
8. 自行練習
請執行下列操作:
- 將
println()
指示變更為print()
。 - 執行程式。發生了什麼?
提示:print()
指示只會顯示文字,不會在每個字串結尾加上換行符號。
- 請修正文字,使訊息的各個部分分行正確。
提示:在文字中加入 \n
即可新增換行符號。例如 "line \n break"
。加入換行符號會變更輸出內容,如下所示。
提示:不輸入文字即可顯示空白行:println("")
。
程式碼:
fun main() {
println("no line break")
println("")
println("with line \n break")
}
輸出內容:
no line break with line break
檢查操作:
以下為可能的解決方法:
fun main() {
print("Happy Birthday!\n")
print("Jhansi\n")
print("You are 25!")
}