「寫程式」 是什麼意思?


Posted by krebikshaw on 2020-06-14

前言

這篇文章不是深度文,不會用非常專業的方式告訴你 寫程式 的定義。
這篇文章只是想告訴第一次聽到 寫程式 這個詞時,要怎麼去理解這件事情。

寫程式的目的

讓電腦動,這是就我們寫程式的目的。
為了達成這個目的我們必須先達成幾項條件才行。

舉個生活上的例子

你某天在網路上認識了一位日本朋友,因為日本朋友只看得懂日文,所以為了要跟他聊天,你必須先把你想說的話 翻譯 成日文在發送過去。

與人溝通前,要先確認對方聽的懂 哪一種語言

與電腦溝通

為了要達成一開始 讓電腦動 的目的,我們必須了解電腦聽的懂哪一種語言。
是中文?還是日文?答案是:程式語言

我們要利用 程式語言 來對電腦下指令,讓電腦照著你的要求去做。

電腦沒那麼聰明

若是想請旁邊的朋友幫你把電腦開機,你可以這麼說:

  • 幫我開一下電腦
  • 幫我打開電腦
  • 電腦先開起來
  • 你先開機

因為我們很聰明,所以這些講法我們都能聽得懂想表達的是什麼。
但是電腦沒辦法聽懂那麼多不同的講話方式。

對於電腦而言:打開電腦就是一個指令,只有一種講法,只有一種樣子,而且完全不能有錯字,多一個空格都不行 電腦才看得懂。

所以 標準化 相當重要,只能按照電腦訂的規則對電腦下指令,電腦才看得懂。
下指令的方式就是透過程式碼。

電腦一次只能做一件事

假設今天要你找出這段英文裡面有幾個 s

R E S P O N S E

聰明的你可以直接告訴我有 2 個 s ,因為你一看就知道了。
但是電腦很笨,電腦沒有智商,沒你那麼聰明,它一次只能做一件事情。

電腦怎麼做:

  1. 看看第一個字是不是 S ,是的話就記下來,不是就跳過
  2. 看看第二個字是不是 S ,是的話就記下來,不是就跳過
  3. ........
  4. 最後看看記下來幾個字,然後告訴你答案是多少

程式碼不是重點,解決問題才是

以上的範例可以告訴你,你必須先把 找出幾個 S 這件事情,拆開成一個步驟一個步驟,才能讓電腦來執行。

所以在寫出 程式碼 之前,要先寫出 解決問題 的步驟是什麼。

生活案例

我們來試著用電腦的思考角度來解決問題吧:

假設你是一位廚師,你要依照拿到的菜單來做出餐點,你可以把步驟拆解開來:

  1. 看看第一道菜
  2. 如果是牛肉漢堡
  3. 就拿漢堡麵包,烤 5 分鐘,拿 100g 的肉放上去
  4. 放上 200g 的生菜,抹兩湯匙的番茄醬,一湯匙的糖醋醬
  5. 如果是雙層牛肉漢堡
  6. 就拿漢堡麵包,烤 5 分鐘,拿 100g 的兩片肉放上去
  7. 放上 200g 的生菜,抹兩湯匙的番茄醬,一湯匙的糖醋醬
  8. 如果是牛肉三明治
  9. 拿三明治,烤 3 分鐘,拿 100g 的肉放上去
  10. 放上 200g 的生菜,抹兩湯匙的番茄醬,一湯匙的糖醋醬
  11. 如果都不是
  12. 告訴外場,菜單寫錯了

總結

  • 寫程式 的目的就是為了讓電腦做事,電腦只看的懂程式碼,所以我們要用程式碼來下指令。
  • 寫程式碼之前,我們要先將解決問題的流程,拆解成一步驟一步驟的,才能轉換成程式碼。

#寫程式







Related Posts

JS註冊組|學習筆記|JavaScript&jQuery網站互動設計程式進化之道

JS註冊組|學習筆記|JavaScript&jQuery網站互動設計程式進化之道

從實際案例看 class 與 function component 的差異

從實際案例看 class 與 function component 的差異

【瀏覽器資料存取】IndexedDB

【瀏覽器資料存取】IndexedDB


Comments