2019.08.12 11:30

用1小時學習程式設計「Code.org」:讓迪士尼角色陪你邁向Coding之路

ADVERTISEMENT

剛開始學習程式設計的人,一定會求助於網路上的眾多教學資源,而 Code.org 便是大家絕對不會放過的網站之一,它原本是美國的 Hadi Partovi 和 Ali Partovi 兩兄弟在2012年所成立的非營利組織,2013年開設同名網站,其成立目標在於支援並擴充學校教育的資訊科學課程。

網站內的所有學習資源與教材均完全免費,不僅面向學習者,同時也面向學校教師,藉由全球各地翻譯志工的協助,其影響力也迅速拓展至美國之外。一般我們常認為程式設計是一個專門的領域,總是與電腦分不開,但事實上,許多程式語言背後的概念,都與日常生活中的經驗不謀而合,所以在 Code.org 網站的課程設計中,亦加入許多「不插電」的教學內容,作為程式設計的叩門磚,大大減低學習者們的抗拒感,而其中最負盛名的,莫過於被稱做「一小時玩程式」(Hour of Code)的趣味學習活動了,甚至得到微軟、Google、Facebook 等科技公司的大力支持。

用1小時學習程式設計

「一小時玩程式」是一項由 Code.org 網站所發起的活動,讓教師們可以透過遊戲的方式,從中介紹資訊科學以及程式設計的概念,藉此培養學生邏輯思維的能力,不會耗費太多時間,通常只需要短短一節課左右的時間就能完成,且不管是否曾經學過程式設計都沒關係,4歲到104歲都能輕易上手。這些線上課程內容都是免費開放的,所以就算只有自己一個人,用電腦或手機打開 Code.org 網站,便能立刻自學,不受任何人數、時間及地點的限制,不過官方建議兩人合作的話,最有助於腦力激盪,可激發解決問題的靈感,而據網站統計,已有超過1億名學生體驗過「一小時玩程式」的課程。

ADVERTISEMENT

依照興趣挑選課程

由於免費、簡單又好玩,Code.org「一小時玩程式」得到了相當廣泛的支持,網站內匯集了由 Code.org 及其合作夥伴所設計的各式課程,目前已經超過100多種,部分已由志工翻譯為中文,降低不少語言的隔閡。大部分課程的程式語言採用 Blockly,如同 Google 的 Blockly Games 一樣,是透過積木堆疊的方式來編輯程式,此外也有以 JavaScript 與 Python 為主的進階課程。每個「一小時玩程式」課程之間並沒有明顯接續的關係,使用者可依照年齡與類別自由選擇有興趣的題材,它與 Blockly Games 比較不一樣的地方在於,得力於合作夥伴的授權,課程中納入了許多知名角色與主題,例如星際大戰、憤怒鳥等等,並強化了劇情與遊戲性,就算單純把它當成解謎冒險遊戲,也相當值得一玩。

ADVERTISEMENT

取得課程證書

而「一小時玩程式」內的線上課程,均會劃分成若干小關作為學習的步驟,一般狀況下,使用者無須註冊便能開始課程,不過如果申請成為網站用戶的話,登入之後便可隨時記錄並查詢課程進度,另外作為完成課程的獎勵,網站還會提供電子檔的證明書,雖然其象徵性大於實際意義,但畢竟也可算是你的第一張程式設計證書。

ADVERTISEMENT

經典迷宮:積木堆疊、迴圈與條件控制

經典迷宮可以算是熟悉 Blockly 程式運作邏輯的入門課程,課程中導入了憤怒鳥、冰原歷險記等角色,課程目標很簡單,就是控制角色抵達指定的目的地,過程中需透過堆疊積木的方式讓角色移動。「經典迷宮」共有20個關卡,當你學會了基本的行進方式後,接著可以透過迴圈積木進行重複的動作,並加上條件控制積木,以免角色走錯路,隨著關卡繼續推進,迷宮會越來越複雜,甚至需要運用到多層次的條件控制才能達成目標。

經典迷宮
https://hourofcode.com/code

ADVERTISEMENT

Minecraft設計師:如何創造自己的世界

「一小時玩Minecraft」是 Code.org 與微軟合作的系列課程總稱,Minecraft 除了是一款微軟收購的知名遊戲外,後續推出的Minecraft教育版同時也是微軟推廣 STEM 教學的利器之一,更結合 Code Connection 等附屬應用,實現在 Minecraft 遊戲內寫程式。而「一小時玩Minecraft」則可算是它的入門版本,目前已經推出4個主題課程,包括「水上巡航」、「英雄之旅」、「Minecraft探險家」等等,這裡以「Minecraft設計師」為例,在12個關卡中,你可以為其他生物編寫程式,打造屬於自己的世界。

Minecraft設計師
https://studio.code.org/s/minecraft/

星際大戰:遙遠銀河系裡的小遊戲

「一小時玩程式」的特別之處,在於即使課程內容都是相似的程式設計原理概念,仍然可以套用不同的主題框架,所以就算你已經玩過前面提過的憤怒鳥迷宮以及 Minecraft 設計師,再看到這款星際大戰,依然會想要再打開來玩一次,在學習的過程中,便獲得了反覆練習的功效,你會發現自己堆積木的速度變快了,而在這款星際大戰中,除了我們已經熟悉的循序和迴圈控制結構外,還加入了分數規則的設計,讓你可以運用熟悉的角色,逐步建立星際大戰的迷你小遊戲。 

星際大戰
https://hourofcode.com/star-wars

舞蹈派對:用程式積木創造動態舞會

亞馬遜在去年發表了未來工程師計畫(Amazon Future Engineer,AFE),它是是一項以社區為目標的教育推動計畫,其項目內容與 STEM 領域緊密相連,除了提供獎學金與實習機會外,在中小學教育方面也有計畫地與 Code.org 等組織進行合作,「舞蹈派對」即是此一計畫之下的產物,課程特別強調於創造力對於程式設計的重要性,因為即使具備了程式設計的能力,那也僅是你實現創意的基礎技能而已。在「舞蹈派對」裡,你可以選擇人物,讓它對音樂做出反應,並且使它更有互動性。

舞蹈派對
https://hourofcode.com/danceparty

玩樂實驗室:就用小遊戲來說個故事吧!

在「一小時玩程式」內的「潛力無限實驗室」以及「玩樂實驗室」兩個課程相當相似,差別是前者的人物角色如杯麵、艾莎等有迪士尼的授權,課程主旨是透過有限的程式積木,說出一個故事或建立小遊戲,這裡也藉由《植物大戰僵屍》開發公司的創始人之口,點出了關於遊戲設計的重要觀念,那就是所謂遊戲並不代表程式有多完美、美術有多厲害,遊戲的本質就是有趣好玩,先把握住這個前提,即使是透過玩樂實驗室,也能創造出有趣的小遊戲,並且在過程中學習到指令、事件、迴圈等基本概念。

玩樂實驗室
https://hourofcode.com/play-lab

冰雪奇緣:運用迴圈畫出美麗雪花

在 Blockly Games 的烏龜關卡中,我們曾經應用不同的程式積木來進行繪圖,而在「一小時玩程式」內也有類似的課程,他們請到了迪士尼《冰雪奇緣》的主角來協助教學,對於女孩子來說或許更有吸引力。在這個課程中主要應用到的是迴圈及函式的概念,甚至在迴圈之內,還可以再嵌入迴圈組成雙層結構,這樣就不需要複雜而冗長的程式碼,也可繪製出有規律的美麗雪花圖樣,但是在解題過程中,也要用到角度及距離等計算,而越到後面的關卡,要畫出的雪花圖形難度也會稍微高一些。

和安娜與艾莎一同玩程式
https://hourofcode.com/frzn


          本文同步刊載於PC home雜誌
 
         
          歡迎加入PC home雜誌粉絲團

ADVERTISEMENT