Why Programming? Why this lesson?

為什麼要學程式設計?

吳正己教授

國立臺灣師範大學資訊教育研究所

(1)學習高層次思考技能

為了讓電腦解決特定的問題,我們把指揮電腦工作的指令寫在程式中,當電腦執行程式時,即可依這些指令完成工作。程式設計,基本上是一種問題解決活動。在問題解決的活動中,學生需要瞭解問題、分析問題、思考解題方法(或規劃解題步驟)、將解題方法付諸實施(執行解題步驟)、評估解題成效。這一系列的活動都是高層次思考活動,透過程式設計,學生可以經歷、學習這些高層次思考技能。

_images/000_001.png

(2)程式設計也是一種邏輯思考活動

在程式設計過程中,學生需要分析相關事、物間的因果關係,依給定的條件或情況推論可能結果;程式如果無法正確執行時,需要抽絲剝繭回溯解題方法,分析問題之所在。學習程式設計有助於邏輯思考的訓練。

(3)學習程式設計有助於瞭解資訊科技與資訊科學

程式的撰寫、編譯、執行、及測試等過程都須要使用資訊科技工具;程式設計中不可或缺的輸入、運算(處理)、輸出、及儲存(記憶)等元素,即是現代電腦架構的基本組成,學習程式設計可以瞭解電腦工作原理;程式設計中的解題方法(演算法)規劃,更涉及電腦科學的理論核心。

Scratch程式設計12堂課

高慧君

臺北市立南港高中

一、為什麼選用Scratch來教程式設計?

1.克服英文障礙

傳統程式設計是打英文的程式碼,學生有可能英文不好而學不好程式設計,在Scratch中,使用中文來寫程式,學生可以著重在程式的邏輯上,而不是語言本身造成的溝通障礙。

2.克服語法障礙

傳統的程式設計必須使用合於程式語言語法的句子來寫程式,學生須將注意力放在是否合於語法規則上,而不是程式設計邏輯觀念上。有時候是忘了寫分號,有時候是少了一個括號。語法的錯誤經常會造成學生學習的挫折感。在Scratch中,它提供圖形化的介面,使用者不太需要使用鍵盤來輸入各項指令,而是使用組合積木的方式來撰寫程式碼,因此不會有語法錯誤的情況發生。

3.克服數學障礙

傳統的程式設計多使用數學或商業應用等計算導向的問題來做為範例,然而,計算的過程是抽象的,不容易觀察的,學生也有可能因為數學不好而學不好程式設計。在Scratch中,是為了讓角色動起來而撰寫程式,寫程式的目的不是為了計算,而是為了互動。

二、為什麼使用本教材?

1.用遊戲創作的方式來學程式設計

學生經常玩電腦遊戲,但是不知道遊戲是如何被創作出來的,這種現象,就好像學生只會閱讀,而不會寫作一樣。本教材介紹了許多遊戲的創作過程,學生可以從遊戲範例中,認識程式設計的重要觀念與技巧。相較於傳統程式設計以數學或商業應用的問題,運用遊戲創作,學生有具體要達成的目標,解法也不再侷限標準的答案。遊戲創作的作品讓學生較有興趣與成就感,學生也可以自由發揮創意擴充遊戲的功能。

2.用案例的方式學來學程式設計

傳統的程式設計教材多以程式語言的結構為基礎,這樣的教學是以知識為中心,這樣的學習往往與學生的經驗脫節,學生不容易記得程式設計的知識結構,而且傳統教材的範例多是為了解釋個別的語法而舉例,學生只學到零碎的知識,而無法學習解題的完整概念。本教材採用案例的方式,每個遊戲案例都有一個名稱,學生會記得創作了哪些遊戲名稱,然後順便把完成這個遊戲的觀念記起來,案例的鋪陳是按知識中心的方式來編寫,而且後面的例子會繼續使用到前面提過的觀念,隨著觀念介紹的增加,學生可以完成的遊戲功能愈來愈複雜。

Table Of Contents

Previous topic

程式設計邏輯訓練─使用Scratch

Next topic

Scratch簡介