2016年4月18日 星期一

Swift: Var是什麼東西?學寫程式的開始

我們剛開始規劃一個程式時,至少一定會有一項"任務"要由程式完成,
這個任務的定義必須很清楚,清楚到每個小螺絲釘都要逐一定義,
才能獲得正確的執行結果。


寫程式可以分成三個階段:A→B→C

A. 無中生有一些東西,
B. 組合使用這些東西,
C. 然後產出結果。

下面逐一來說明。


A. 無中生有一些東西

我們的任務是 "從五個句子中,印出其中 一行句子 "

要定義的東西如下:

1. 五行句子,它們都必須有名字 (我們才能知道要呼叫誰)
2. 一個數字,也要有名字
3. "印出" 的這個功能也要定義一下

Swift的語法就是這麼用:

var str_nice = "超好吃的啦!"
var str_fine = "還不錯唷!"
var str_ok = "還可以,普通。"
var str_bad = "不怎麼樣。"
var str_awful = "難吃到我想吐..."

var star1 = 1
var star2 = 2
var star3 = 3
var star4 = 4
var star5 = 5

看到var一出現,就知道:
我要無中生有一個東西(變數),然後定義這個東西(變數)是什麼。
(var是variable的縮寫,意思是"可變的東西")

str_nice ... str_awful   這些就是自己取的變數名字;
"="                              這個符號有指定的意思;
"超好吃的啦!"        這個就是我們賦予該變數的內容

如果上面的說明都懂了,那接下來的
var srar1 = 1

我們就知道這代表「我要生一個變數,叫做star1,它的內容是1
注意,因為變數可以有很多種可能的類型,像數字、文字,
數字又有分很多種,所以一旦定義了它的內容之後,
就不能換類型了。電腦會根據我們賦予的內容而自動判斷變數的類型。
(字串取名str,因為str是string的縮寫,意思就是"字串")

OK,繼續下去。


B. 組合使用這些東西

print (str_nice)

這行code很明瞭的會幫我們印出 str_nice - "超好吃的啦!"
如果我們肯定知道東西一定很好吃,那今天任務可以結束,
不過若有可能跑出別的結果,我們還是得多加一點變化性。

這裡會使用到function,中文叫"函式"(詳細看這篇),
function裡面可以定義很多行為,當一次呼叫時,
它就會一次處理所有定義的動作。

func comment (words:String = "我再想想...") {
        print (words)
}

comment (xxxxxxx)  //這一行就是呼叫上面定義的function

當我們抽換xxxxxxx為 str_nice 或 str_bad 時,
它就會把 str_nice 或 str_bad 丟進comment裡面,
然後你看上面的{ } 中有個words變數就會把它"接住"!!
接著透過 print (words) 被印出來,任務完成!

comment (str_fine)

執行結果:

"還不錯唷!"

Q.「等等,那之前定義的 star1 ... srat5 呢?」
A.「function還有更多變化,您不妨試著探索看看。」


C. 然後產出結果

結果已經產出了,我文章寫得不是很好|||,在stage B. 中。


回顧一下,
寫程式可以分成三個階段:A→B→C

A. 無中生有一些東西,
B. 組合使用這些東西,
C. 然後產出結果。


繼續加油!



沒有留言:

張貼留言