資訊內容
兒童編程入門— Scratch 簡介
有一個老笑話,是關于程序員的:
某程序員退休后決定練習書法,于是重金購買文房四寶。一日,飯后突生雅興,一番研墨擬紙,并點上檀香。定神片刻,潑墨揮毫,鄭重地寫下一行字:Hello World!
哈哈,如果你笑了,那你就不但暴露了職業,還暴露了年齡!不要小看這個"Hello World!",這可是大齡程序員入門的必經之路??!奶爸鄧博士還記得自己當年在一臺單色的顯示器,努力的敲入了幾行代碼,然后看著屏幕上輸出了“Hello World!”時的激動表情(一條碼農的不歸路從此緩緩展開....)
話說回來,如果現在給小魚同學還用這種方法來教編程的話,估計小魚同學早就暴走了!伴隨著樂高和iPad長大的孩子們,怎么能還用這么老土的辦法呢?我們自然有更好的選擇。微軟公司的創始人比爾蓋茨,在給兒童的編程課程上,就推薦使用積木式編程語言:Scratch。
作為一款面向青少年的圖形化編程工具,Scratch可謂身出名門:它是由美國麻省理工學院(MIT)設計開發的。在Scratch環境中,孩子不需要寫任何編碼,只要使用鼠標拖拽部件就可以組成游戲、卡通和動畫。Scratch利用類似搭積木的方式來編寫程序。在老師的指導下,小學的孩子都可以完整的擺出一個能運行的程序。尤其重要的是,這個過程充滿了趣味。
在了解Scratch之前,我們先來看幾組數字,對Scratch的普及度有個基本了解:
(1)多少人在用Scratch?
從Scratch的官網上可以獲知,全球有超過兩千萬用戶在學習使用Scratch。第一名不用說是美國,大約900萬,占44%。第二名的是英國,大約185萬。加拿大和中國的學習人數分別是是56萬和20萬,說明這是一個充滿活力的社區。
(2)哪些人在學習Scratch?
最小的年齡有4歲,大約有3.8萬人,主要集中在7-15歲這個階段。為什么15歲以上不學了呢?那是因為覺得Scratch太簡單了,這個年齡都已經上高中了,還是來直接敲代碼吧!
(3)Scratch社區規模
好吧,這是全球最大的程序員社區,沒有之一!
之所以受到這樣廣泛的認同,與Scratch語言良好的設計密不可分。在項目創建之初,Scratch開發團隊總結出一門好的兒童啟蒙編程語言應該滿足三個條件:低門檻(low floor),即容易上手操作;高上限(high ceiling),即允許使用者建立高度復雜的項目;寬壁壘(wide walls),即支持各類項目的創建,能滿足用戶的不同需求。為了達到這三點要求,Scratch在不斷更新發展的過程中,在保證用戶終身免費使用的前提下,始終堅定了三條核心設計原則:程序更易修改(More tinkerable)、項目更有意義(More meaningful)、社交氛圍更濃厚(More social)。
(1)程序更易修改
MIT媒體實驗室下的終身幼兒園團隊與Lego有多年的合作經驗,參與過Lego Mindstorms和其他機器人產品的研發。開發團隊發現,在孩子們搭建積木的過程中,他們會積極地動手嘗試,并在搭建過程中自發地改進和創造。
Scratch的代碼窗口界面刻意被設計成類似實物桌子的樣子,便是在模仿孩子們玩Lego時的場景,方便孩子們隨意拖拽編程積木在這個“桌面”上。配合Scratch交互性極強的編程環境,用戶只要一觸發代碼塊的運行,可即刻在左邊的可視化窗口觀察到運行結果,并可在運行過程中修改代碼,觀察修改后代碼對應的觸發結果。
這種學習模式與一般編程學習工具倡導的“自上而下的規劃(top-down planning)”相反,被稱為“自下而上的修補(bottom-up tinkering)”,這樣的模式可能會讓學習過程有些雜亂無章,但用戶根據動畫運行結果來不斷修改代碼,這種探索實驗式的學習途徑其實是更讓學習者感到舒適的。Scratch多次更新的過程中,也強調了通過這種模式培養孩子們“直覺思維(intuitive learning)”的能力。
(2)項目更有意義
我們都知道,我們在做一件自己認為有意義的事情時,我們是最享受的,這時候學習也是最高效的。Scratch的開發團隊也深知這一點。因此,Scratch在開發之初非常關注兩點:多樣性和個性化。
多樣性是指Scratch支持用戶創建各類項目,不管是故事、游戲、動畫,用戶都可以根據自己的需求和興趣在Scratch上完成相應類型的項目。
個性化是指支持用戶在Scratch中導入圖片或音樂、錄音、畫圖等功能。這也是Scratch至今仍堅持采用有些過時的二維位圖技術的原因。因為只有在這樣簡潔單一的環境下,用戶的各式各樣的素材才能被充分地得到支持,項目才會充滿創造的無限可能性。
(3)社交氛圍更濃厚
自Scratch推出2.0版本后,Scratch從一門編程語言轉變成了一個語言與社區并重的產品。Scratch社區已是Scratch不可分割的一部分,其活躍的社區氛圍也是Scratch達到如此大影響力的主要原因。
Scratch 2.0新增的“一鍵分享”功能,便體現出Scratch對“再創造”理念的重視,這種“分享”、“再創造”的概念極大推進了學習者之間的合作以及對開源的理解。不少Scratch經典項目便是由來自多個不同國家的孩子跨國合作完成的。當然,擁有超過40種語言的翻譯版本是這一切跨國合作的基石。
關于Scratch語言設計的背景知識,我們就介紹到這里。
聲明:本文章由網友投稿作為教育分享用途,如有侵權原作者可通過郵件及時和我們聯系刪除
