在本程式碼研究室中,您將使用互動式編輯器,以 Kotlin 語言編寫您的第一個程式,您可以透過瀏覽器執行這個編輯器。
您可以把程式[LINK] 當成一系列的指示,讓系統執行一些動作。舉例來說,您可以編寫程式來建立生日卡。在該計劃中,您可以撰寫指導以列印祝賀文本,或是計算某人出生年份的年齡。
就像使用人類語言與他人溝通交流一樣,您也可以利用程式設計語言與電腦作業系統溝通交流。更棒的一點是,程式設計語言沒有人類語言那麼複雜,而且更具邏輯性!
Android 應用程式以 Kotlin 程式設計語言編寫而成。Kotlin 是一種現代語言,可讓開發人員以有效率的方式編寫程式碼,並盡量減少錯誤。
同時學習如何建立應用程式,以及程式設計的基本知識並不容易,因此您在開始建立應用程式前,會先進行幾項程式設計。熟悉一些程式設計基本知識,不僅是建立應用程式的一大步驟,在本課程的後續過程中還能輕鬆建立第一個應用程式。
程式碼編輯器這項工具可協助您撰寫程式碼,就像文字處理器 (例如 Google 文件) 協助您建立文字文件一樣。在本程式碼研究室中,您要在瀏覽器中使用互動式 Kotlin 編輯器。也就是說,您不需要安裝任何軟體就能完成應用程式開發的第一步。
必要條件
- 在網路瀏覽器中使用互動式網站。
課程內容
- 如何建立、變更、瞭解並執行用於顯示訊息的最小 Kotlin 程式。
建構項目
- 以 Kotlin 程式設計語言編寫的程式,執行時會顯示訊息。
軟硬體需求
- 使用新型網路瀏覽器的電腦,例如最新版的 Chrome。
- 電腦具備網際網路連線。
在這項工作中,您只要使用網站的編輯器,即可立刻以 Kotlin 語言進行程式設計。
使用互動式程式碼編輯器
您可以直接透過網頁式工具建立第一項程式,不必在電腦上安裝軟體。
- 在瀏覽器中開啟 https://try.kotlinlang.org/。系統會開啟使用瀏覽器的程式設計工具。
- 系統應該會顯示如下圖的頁面,左邊會列出檔案清單和右側的編輯器。此外,右下角可能會顯示一個含有 Cookie 政策資訊的黑色方塊。
警告:如果這個網站的 Cookie 政策不符合您的情況,請勿繼續進行。
- 按一下黑色彈出式方塊左上角的 [X] 即可關閉。
- 請參考下方的附有註解的螢幕截圖,以參照這個編輯器的方向。
- (1) 在頂端的「學習」、「社群」和「試用」分頁中,如果尚未選取 [在線上試用] 標籤,請按一下該標籤。
- (2) 檔案最左邊的 [檔案總管]。此清單中的每個資料夾都有一個小型的獨立範例,用於學習 Kotlin。
- (3) 右側窗格中的「編輯器」是用來編寫程式碼的多數作業。
這個網頁式程式碼編輯器具有許多其他功能,但以下功能對您而言最為重要。
開啟範例程式碼
- 如果在檔案總管中,如果尚未選取,請選取範例>哈囉,全世界!> 最簡單版本 > SimplestVersion.kt (下方螢幕擷圖中為 1)。
- 在檔案名稱 SimplestVersion.kt 中,注意 .kt 副檔名 (請參閱下方螢幕擷取畫面中的 1)。如同圖片副檔名為
.jpg
或.png
,且 PDF 副檔名為.pdf
,所有 Kotlin 檔案都必須擁有.kt
副檔名。 - 請注意編輯器內的程式碼 (下方的螢幕截圖中有 2 個)。其中部分程式碼已醒目顯示。這是您實際使用的程式碼。
以下是編輯器中醒目顯示的程式程式碼:
fun main(args: Array<String>) {
println("Hello, world!")
}
執行程式程式碼
執行您建立的程式,與在電腦上執行文字處理器等程式大同小異。不同之處在於,執行程式來完成工作或玩遊戲時,您主要關心程式可以為您做什麼,而不關心使其工作的程式碼。進行程式設計時,可以看到實際運作的程式碼,瞭解神奇的功能。
我們來看看這項程式的用途!
- 在編輯器中,找到右上角的綠色三角形
,然後按一下該程式即可執行計劃。
- 視需要向下捲動頁面,直到編輯器底部顯示下方窗格 (下方螢幕截圖中的 1 個為止)。
- 再按一下 [Console] (控制台) 分頁標籤即可。主控台是程式可用於列印文字輸出的位置。
- 請注意,「Console」(控制台) 窗格中印有
Hello, world!
,如上方螢幕截圖所示。現在您已經瞭解這個程式的作用:它會在「控制台」視窗中列印或輸出 Hello World 訊息。 - 請留意在列印的
Hello, world!
上方是Compilation complete successfully
訊息。編譯是一種將 Kotlin 程式程式碼轉譯為系統可執行表單的程序。如果編譯成功完成,程式就不會發生錯誤,導致其無法執行。
計畫組成部分
您已經瞭解這個程式的功能,不妨先瞭解它的運作方式。
- 在編輯器中查看程式。
- 請注意此程式碼包含兩個部分。
計畫最上方的部分:
/**
* We declare a package-level function main which returns Unit and takes
* an Array of strings as a parameter. Note that semicolons are optional.
*/
在上方的程式碼片段中,您會看到以下符號中的文字: /*
和 */.
這表示該則留言為留言,也就是內含其他開發人員相關資訊的訊息。執行程式時,系統會忽略這則意見。目前您也可以忽略這則留言!您會在日後的程式碼研究室中進一步瞭解註解。
計畫的下半部:
fun main(args: Array<String>) {
println("Hello, world!")
}
這三行程式碼是實際執行和列印訊息的實際程式。
變更 Hello World 程式碼
我們略微變更了程式的用途。
- 將
"Hello, world!"
文字變更為"Happy Birthday!"
。 - 按一下右上角的綠色執行按鈕
,即可執行程式。
- 「Console」(控制台) 中現在會顯示
Happy Birthday!
的列印內容 (如下方的螢幕截圖所示)。
運作原理
完成方式這似乎只是為了列印內容而需要大量的程式碼!
假設您想讓朋友在一張紙上寫下 "Hello, world!",當中包含很多隱含資訊。如果你只告訴他們,「寫入世界!」;比方說,他們會假設自己需要使用筆,並且您希望他們用字母書寫!電腦並沒有做出這些假設,因此請確實提供包含每個步驟的明確指示。
就像英文有結構一樣,程式設計語言也是如此。如果您曾學習過其他語言,您就會知道瞭解文法、拼寫、可能還有新的符號字母表和詞彙很困難。與計畫相比,學習課程內容也相當困難,但幸運的是,學習起來較為複雜,更適合學習 (例如英文)。
瞭解計劃的各項內容
現在,我們來看看程式碼。此程式的每個部分都是一個特定目的,而您需要瞭解所有部分,才能執行這個程式。我們先從第一個字詞開始。
fun
fun
是 Kotlin 程式設計語言中的字詞。fun
代表函式。函式是程式中用於執行特定工作的一部分。
fun main
main
是這個函式的名稱。函式具有名稱,因此可以彼此區別。此函式稱為main
,因為這是您執行程式時呼叫的第一個或主要的函式。每個 Kotlin 程式都需要名為main
的函式。
fun main()
- 函式名稱後面一律加上兩個括號
()
。
fun main(args: Array<String>)
- 您可以在括號中加入與該函式搭配使用的資訊。函式的輸入內容稱為「引數」,或簡短表示為
args
。稍後將會進一步說明引數。您只需要知道main
函式一律會使用相同的引數。
fun main(args: Array<String>) {}
- 請注意,在引數後方加上大括號。函式內部是用於完成工作的程式碼。這些大括號圍繞著這些程式碼行。
查看大括號之間的程式碼行:
println("Happy Birthday!")
這行程式碼會列印 Happy Birthday!
文字。
println
會告知系統列印一行文字。- 在括號中輸入您要列印的文字。
- 請注意,要列印的文字會以引號括住。這會指示系統應準確列印引號內的所有內容。
如要實際列印文字,整個 println
指令必須置於 main
函式內。
所以這裡有最小的 Kotlin 程式
fun main(args: Array<String>) {
println("Happy Birthday!")
}
列印多則訊息
做得好!您使用 println() function
列印了一行文字。不過,您可視需要在函式中放入任意數量的指示,以完成工作。
- 請複製這行
println("Happy Birthday!")
並貼到下方兩次。請確定您貼上的行位於main
函式的大括號中。 - 變更其中一個文字,將其列印成某人的姓名,例如「Jhansi」。
- 將其他要列印的文字變更為「您已經 25 歲!」。
你的代碼應如下方所示。
fun main(args: Array<String>) {
println("Happy Birthday!")
println("Jhansi")
println("You are 25!")
}
這個程式碼執行時,您希望它能產生什麼效果?
- 執行程式以瞭解其功能。
- 前往「Console」(控制台) 視窗,您應該會在主控台中看見 3 行列印,如下所示。
做得好!
處理錯誤
在程式設計期間出錯是很正常的,很多工具都會提供意見回饋,協助您修正錯誤。在這個步驟中,您可以建立錯誤來查看相關錯誤。
- 在程式中,移除
Jhansi
文字前後的引號,這樣線條看起來會如下所示。
println(Jhansi)
- 執行程式。在程式碼的第 8 行旁邊,您會看到
Jhansi
的紅色文字以及驚嘆號,表示發生錯誤的位置。
- 向下捲動以查看主控台。
- 選取 [問題檢視] 分頁標籤 (若未選取)。
- 查看「問題檢視畫面」分頁。顯示包含相同驚嘆號圖示和
Error
字詞的郵件。以下說明程式碼內的錯誤。
- 尋找數字。
(8, 12).
這些數字代表錯誤中的程式碼行,第 8 行及此行中字母開頭的字母位置,也就是12
。 - 接下來,您會看到以下訊息:
Unresolved reference: Jhansi
。這個訊息會指出系統認為程式碼中的錯誤。即使您不知道錯誤訊息的含義,或許也能找出問題所在。在這個案例中,您瞭解了println()
指示會列印文字。您之前瞭解到文字必須位於引號之間。如果未以引號括住文字,表示發生錯誤。 - 請重新加上引號。
- 執行程式,確保其可再次運作。
恭喜!您已經執行並變更了第一個 Kotlin 程式!
這是您在本程式碼研究室中參與計劃的完整程式碼。
- https://try.kotlinlang.org/ 是一種互動式程式碼編輯器,可讓您練習編寫 Kotlin 程式。
- 所有 Kotlin 程式都需要有
main()
函式:fun main(args: Array<String>) {}
- 使用
println()
函式列印一行文字。 - 將您要列印的文字置於雙引號之間。例如
"Hello"
。 - 重複
println()
指示以列印多行文字。 - 在程式中,錯誤會標示為紅色。「問題檢視」分頁中會顯示錯誤訊息,協助您找出錯誤的位置和成因。
本程式碼研究室是 Kotlin 基本概念 Android 基本概念的一環。
請練習下列項目:
- 將
println()
的操作說明變更為print()
。 - 執行程式。這樣會發生什麼情況?
提示:print()
指示只會列印文字,而不會在每個字串結尾加上換行符號。
- 修正文字,讓郵件的每一行分別獨立。
提示:在文字中加入 \n
即可新增換行符號。例如,"line \n break"
。新增分行符號會變更輸出,如下所示。
提示:如要列印空白行,只要直接輸入下列文字即可:println("")
。
代碼:
fun main(args: Array<String>) {
println("no line break")
println("")
println("with line \n break")
}
輸出:
檢查操作:
以下為可能的解決方法:
fun main(args: Array<String>) {
print("Happy Birthday!\n")
print("Jhansi\n")
print("You are 25!")
}