• 沒有找到結果。

第二章 文獻探討

第一節 Scratch 程式語言

第二章 文獻探討

本章第一節介紹 Scratch 程式設計語言及其相關研究;第二節討論 Scratch 語 言中物件導向的特質;第三節探討程式設計教學方法;第四節介紹物件導向程式 分析與設計之方法;第五節則為綜合論述。

第一節 Scratch 程式語言

一、Scratch 程式語言

Scratch 是美國麻省理工學院多媒體實驗室開發的程式設計軟體,此軟體以 8 至 16 歲學童做為主要使用者,融入「多元的想像力」、「豐富的社交性」、「深入 的思考性」作為設計理念,目的是使學生透過創作故事、遊戲、動畫及音樂作品 的過程培養程式設計概念以及高階的思考能力(Resnick, Maloney, Monroy, Rusk, Eastmond, Brennan and Millner., 2009)。

Scratch 程式設計軟體的操作介面主要有四個部分:舞台區、角色區、指令組 合區及程式指令區。圖 2.1.1 為 Scratch 軟體之介面,介面右上角為舞台區,此處 展示程式之完成情形,按下右上角綠旗後會執行程式。舞台區下方是角色物件區,

此處顯示此程式中所使用之角色。介面最右邊是程式指令區,Scratch 將程式指令 分為八大類,其中涵蓋了迴圈、判斷式、運算子及運算元等基本重要程式設計指 令。介面中間則是指令組合區,使用者於此處組合程式指令。

圖 2.1.1 Scratch 程式設計軟體介面

5

二、Scratch 之相關研究

Scratch 推出後迅速引起世界各地教育者及研究者的注意。許多研究明確指出 Scratch 語言的優點及特色。此處以 Scratch 開發團隊所提及之 Scratch 三大特色「多 元的想像力」、「豐富的社交性」、「深入的思考性」作為主軸,進行文獻探討。

1. 多元的想像力:Peppler(2007)認為多媒體也可以是藝術創作的素材,並選 擇用 Scratch 作為創作平台鼓勵學生創作電腦遊戲及互動藝術。林盈方 (2010)

將表演藝術與 Scratch 課程結合,以美術課和電腦課協同教學的方式鼓勵學生 以多媒體來創作影像及音樂的表演作品。郭秀蓮(2009)則利用 Scratch 設計 出互動式故事,並讓學生在完成故事的過程中學習自然課程概念。另有多位 學者如 Fadjo(2008)、Mcinerney(2010)、Wu(2010)、Hsu(2011)使用 Scratch 作為電腦遊戲創作平台,透過創作遊戲的過程教導程式設計概念。Radu(2009) 點閱率(http://scratch.mit.edu/)。Scratch 開發團隊認為透過社群網站的分享與 互動,可以提升學生的學習動機,並藉由觀摩他人的作品激發更多創意及想 像力(Resnick et al, 2009)。Sylvan(2007)認為 Scratch 社群網站和其他著名 社群網站例如:Youtube、Fricker、Facebook 等最大的不同點在於:當一個專 案上傳到 Scratch 網站之後,每一位對該專案有興趣的人都可以下載並改寫該 專案程式,接著上傳成果與他人分享,使一個專案有許多的創造者

(authorship),在偕同創造的過程中每個人將深入理解其他人的創意以及思 考過程。Roque(2012)便以 Scratch 網站作為教學工具的主軸,試圖探討適

6

合社群網頁學習的教學模式。Kafai(2011)則以作品分享的方式嘗試讓學生 合作創作,並發現透過網頁的合作能讓學生更加投入 Scratch 的創作過程。

3. 深入的思考性:Scratch 開發團隊認為透過程式設計的學習能培養孩童深入的 思考能力。Calder(2010)發現透過 Scratch 的學習所培養出思維能力,有助 於數學課程的學習。Lai(2009)發現經過一個學期的 Scratch 課程之後,學 生的邏輯思考能力以及科學問題解決能力有明顯的提升,並且對於 Scratch 的 學習感到很有興趣。Brown(2009)使用 Scratch 作為數學課程的輔助教材,

將數學課程與 Scratch 課程整合進行教學,透過 Scratch 程式撰寫的過程來讓 廣 Scratch。英國則有教學者 Crook(2009)使用 Scratch 取代國小電腦課程中文 書處理、影像處理等傳統教學主軸的課程,透過 Scratch 的課程讓學生學習多媒 體影像、數位音樂的編整以及電腦科學的概念。希臘學者 Fesakis 及 Serafeim(2009)

發現師培生學習了 Scratch 之後,普遍提升了對於程式設計語言的興趣,並願意

7

2.繼承(Inheritance) 3.多型(Polymophism)。

對於 Scratch 語言是否合乎物件導向語言的定義,在 Scratch 官方網站中之

1. Scratch 中的角色(sprites)符合物件導向語言中的「物件」之特質。

2. 透過廣播功能可以讓角色和其他的角色互動,能讓角色存取其他角色中的方 法。

Wegner(1990)指出物件導向程式語言中,物件(object)是許多方法(Method)

的集合,並且用變數來設定物件的狀態(state),當接收到訊息(calls)時,物件

相關文件