1. 程式人生 > 其它 >Swift Playgrounds Mac 程式設計學習入門

Swift Playgrounds Mac 程式設計學習入門

開啟第一個“Playground”(遊樂場)——“學習程式設計 1”,它包括 7 個章節,你可以每天學習其中的一章。一週之後,你就可以自稱為“初窺門徑的開發者”了!

下面就來看看這 7 天的學習內容吧。

第 1 天:命令

在一段快速的介紹之後,Swift Playgrounds 會為你呈現一個分屏檢視:右側是一個電子遊戲世界,主角是可愛的單眼生物 Byte;左側則是程式碼編輯區,你要在這裡輸入 Swift 命令,控制 Byte 的行動。

你的任務包括讓 Byte 到處走走、收集寶石、進入傳送門、切換開關狀態等。要完成這些任務,你需要按照正確順序輸入正確的命令——這其實也正是程式設計的本質。

輸入你的第一條 Swift 命令:“moveForward()”(前進),然後點按“執行我的程式碼”,就能看到 Byte 向前移動了。恭喜——你的第一個程式寫好了!

通過幫 Byte 破解謎題、收集寶石來學習程式設計。

第 2 天:函式

在這一章中,你要組合一系列命令來建立一個節省時間的函式,從而學習如何讓程式碼更加簡明:你不必輸入三次“turnLeft()”(左轉)來讓 Byte 向右轉;只要建立一個叫做“turnRight()”(右轉)的函式,就可以用一個命令完成三次左轉了。

你還要學會如何將較大的問題分解成較小的部分——這個過程稱為“分解”。這樣一來,你就能使用函式快速解決問題了。

第 3 天:For 迴圈

該學習新工具了!迴圈代表 Byte 執行某個命令的次數。當他面對更加複雜的地形時,迴圈將派上大用場。

雖然通關不是什麼難事,但在過程中你常常需要反覆試驗、失敗,並修復你發現的問題。比如,如果 Byte 撞到了牆或是從平臺上摔落,你就會發現自己多加了一個“moveForward()”命令,或者迴圈了太多次。

專業建議:在 Swift Playgrounds 裡,你可以點選計時器圖示,用不同速度執行程式來方便地尋找錯誤。“以較慢速度單步除錯”會在 Byte 執行命令的時候高亮顯示每一個程式碼片段;“以最快速度執行”則能幫你儘快檢視自己的程式是否行得通。

使用函式與迴圈可以快速執行重複動作——這個謎題涉及的就是完全相同的系列動作。

第 4 天:條件程式碼

接下來是條件程式碼,它會讓 Byte 獲得應對資訊的能力。例如,你可以讓 Byte 只有站在寶石下面時才收集寶石。

有時你寫出的條件程式碼可能沒有你所期待的效果。當 Byte 沒能完成任務,你會不禁為他感到難過(因為他會皺起眉頭,一臉傷心);不過,看著他一次又一次地撞牆,也有種惡作劇的樂趣。

第 5 天:邏輯運算子

在接下來的時間裡,你將學習關於邏輯運算子的知識。它們會允許 Byte 對不同情況的組合做出反應。某些條件,如“isOnGem”(在寶石格上),會導致一個非真即假的答案(這被稱為“布林值”)。你可以讓 Byte 在條件為真時做一件事,在條件為假時做另一件事。

這是你程式設計技巧的一次重大進步。在此之前,你已經學會了如何讓 Byte 遵循明確的指示,但現在他可以做出自己的決定了。好吧,其實是你的程式讓他做出這些決定的,但這位獨眼小夥伴確實變得更聰明瞭——你也是。

使用邏輯運算子與條件程式碼讓 Byte 做出自己的決定——這對解決複雜謎題很重要!

第 6 天:While 迴圈

現在你將慢慢明白,自己日常使用的 App 是如何應用你學到的那些命令的。你可以想象,開發者寫下一段“displayTutorial()”(顯示教程)的程式碼,來實現僅在使用者首次開啟 App 時顯示新手教程。

“While 迴圈”解決的是與上面的例子相對的問題:它會讓命令在條件為真的情況下重複執行。比如,你可以告訴 Byte 在沒有道路通向左右的情況下一直向前走。從某種意義上說,程式設計就像是對一個死腦筋的人講話:如果你不告訴 Byte 小心牆壁的話,他就會高興地一頭撞上去。

第 7 天:演算法

恭喜,你堅持到了最後!今天的課程是對之前所有知識的回顧:把命令打包,建立一組清晰的條件指令,讓電腦執行。(你其實已經寫了好幾天演算法了,只是你自己還不知道而已!)

你還將學習微調命令,來處理更加複雜的場景:如果 Byte 可以用多種方式來完成任務,要如何判斷哪種方式最高效呢?

要學的還有很多,但經過這充滿趣味與知識的一週,相信你已經做好充分準備,繼續程式設計之旅了!