在教導電腦科學時,我們常犯的一個錯誤是直接給出定義。例如指著一張像素圖說:「電腦用 0 和 1 來儲存圖片,0 代表黑色,1 代表白色。」。
孩子可能會點頭記住,但他們並沒有真正理解「為什麼」。
根據建構式教學的「探究與聆聽」原則,我們可以將這個單向的講授,轉變為一場雙向的「通訊解謎遊戲」。

第一階段:挖掘直覺 (Before showing the grid)
在拿出方格紙之前,先從「傾聽」開始,了解孩子對電腦圖片的現有概念。
✅ 建構式訪談(有效提問):
- 老師/家長:「想像一下,我想把這張畫在紙上的『字母 C』傳給住在火星上的朋友。但我不能把紙寄過去,我也不能拍照傳給他(假設火星只有無線電,只能用語音通話)。我該怎麼透過電話,告訴他怎麼畫出一模一樣的圖?」
- 孩子:「你就告訴他是個 C 啊!」
- 老師/家長:「好,但如果他不知道 C 長什麼樣子呢?或者我想畫一個外星符號呢?你要怎麼精確地告訴他每一筆畫在哪裡?」
(這時候要閉上嘴巴,聽孩子怎麼說。他們可能會說「上面畫一條橫線」、「左邊畫直線」。這就是我們可以引導的時候。)
第二階段:引入限制與工具 (The “Need” for a Grid)
當孩子發現只用語言描述形狀很難精確時,我們再引入教材中的「方格工具」。
老師/家長:「用講的好像很容易畫歪。如果我們兩個都有一張一模一樣的方格紙(拿出教材中的 5×6 空白表格),會不會比較好溝通?」
活動設計:
- 給孩子看教材中上方那個黑白的像素化 C。
- 給自己一張完全空白的 5×6 表格。
- 請孩子當「電腦」,你當「螢幕」。
- 關鍵提問:「你現在看著那張圖,你要怎麼指揮我,讓我也能塗出一樣的黑色格子?我們來試試看。」
第三階段:共同建構編碼系統 (Inventing Binary)
這階段的目標是讓孩子自己發明二進位,而不是你教他。
情境模擬:
孩子可能會說:「第一行,第二格塗黑,第三格塗黑…」
老師: 「啊呀,如果現在發生了緊急情況,要向火星的朋友求救。每一格都要說『塗黑』或『不塗黑』。有沒有更快的方法?如果我們約定好一種密語呢?」
引導對話(從直覺到正規化):
- 老師:「如果『有顏色』我們喊『有』,『沒顏色』喊『沒』,試試看?」
- (進行幾行後)
- 老師:「如果用數字呢?哪兩個數字最簡單?」
- 孩子:「1 和 2?或是 0 和 1?」
- 老師:「好!那你覺得哪個數字代表黑色(有顏色),哪個代表白色(沒顏色)?你自己決定。」
(注意:教材說 1 是白,0 是黑。但如果孩子決定反過來,請接受它。這是一個絕佳的機會教導「協定(Protocol)」的概念——只要發送方和接收方講好規則,用什麼數字都可以。最後再引導回通用的電腦標準。)
第四階段:驗證與視覺化 (Connecting to the Material)

有效提問範例:
| 提問要素 | 較無效的方式 (Less Effective) | 較有效的方式 (More Effective) |
| 語氣 | 「看這張表,這就是電腦儲存的方式」 | 「看看這張表,這個編碼方式跟你剛剛發明的方法像不像?」 |
| 問題類型 | 「0 代表什麼顏色?」(測驗事實) | 「你覺得為什麼這張講義上,白色是用 1,黑色是用 0?如果我們把它反過來,電腦還能顯示出 C 嗎?」(探究概念) |
| 畫圖/實作 | (無,僅閱讀講義) | 「現在輪到你出題。請在方格紙上畫一個簡單圖案,然後寫出一串 0 和 1 的密碼給我,看我能不能解碼出來。」 |
結論:為什麼這樣教更好?
透過這個過程,孩子學到的不只是「圖像表示法(Image Representation)」的事實,他們學到了:
- 離散化(Discretization):為什麼需要把圖片切成格子(像素)。
- 編碼(Encoding):為什麼需要把視覺訊號轉成數字。
- 標準(Standards):為什麼我們需要約定好 0 是黑還是白。
參考來源:csunplugged image-representation
