資訊內(nèi)容
Scratch兒童編程是啥?附:入門案例詳解
作為一個“誤入歧途然后將錯就錯”的偽理工男來說,計算機編程是被大學(xué)專業(yè)逼著開始學(xué)的,接著讀研、畢業(yè)參加工作,由于工作原因(數(shù)據(jù)處理分析)不得不使用編程工具,畢竟幾句簡潔的計算機指令就能讓電腦沒日沒夜地干活,這種提高效率的工作方式,我們不用別人也會用。所以,不管喜不喜歡,中不中意,甜七爸這種普通人只能被大勢所趨的洪流裹挾著前進(jìn)……
可是,不知從何時開始,身邊年輕家長們的聊天內(nèi)容,除了為孩子買學(xué)區(qū)房選學(xué)校、帶孩子學(xué)鋼琴、上英語培訓(xùn)班、學(xué)畫畫、學(xué)舞蹈、學(xué)圍棋、練跆拳道等等,有時還能聽到帶孩子上兒童編程培訓(xùn)班之類的話題。
天哪!編程這么枯燥的玩意兒,就算是上了大學(xué),很多人都沒興趣學(xué)(思維方式偏感性的女生更甚),更何況六、七歲的孩子?!他們這個年齡,連學(xué)算術(shù)都吃力,連母語閱讀都不怎么順溜,怎么能理解抽象枯燥的計算機語言?!。
Nothing?is?impossible!
后來,甜七爸翻看關(guān)于兒童編程的文章[1-2],游戲和Scratch這兩個關(guān)鍵詞進(jìn)入我的視線范圍,讓孩子從游戲中體驗編程思維應(yīng)該是個比較酷的方式,重點是這個Scratch,正好是專門為孩子們(5-14歲)開發(fā)的編程工具。
甜七爸上網(wǎng)搜資料學(xué)習(xí)了幾個晚上,模仿網(wǎng)上的例子做了幾個比較粗糙的小作品,算是嘗個鮮。各位請先看結(jié)果:
作品一:主角甜七假裝在US?Route66的連拍動畫
作品二:冒牌愛莎找安娜闖關(guān)游戲
體驗之后……
甜七的感受是:哈哈哈哈……好玩!邊玩邊傻笑!
甜七爸感受是:這工具不錯!簡單有趣入門快,想象空間大!如果腦洞夠大,可以做很多有趣的作品。在我們那個年代,能用C語言、C++語言,VB語言編制一個可視化運行程序的一般都是牛人了,非計算機專業(yè)的多數(shù)人還沒熬到入門就放棄了。從學(xué)習(xí)編程這個角度來說,現(xiàn)在的孩子算是幸運的,可以體驗從游戲開始,經(jīng)歷充滿樂趣循序漸進(jìn)的編程學(xué)習(xí)過程。
附:入門案例詳解
(一)編程工具簡介
為了方便寶爸寶媽們一起來體驗Scratch這個有趣的編程工具,甜七爸對此工具做簡要介紹:
Scratch是麻省理工學(xué)院為孩子們開發(fā)的一個免費編程工具,有網(wǎng)頁版(網(wǎng)址:http://scratch.mit.edu)、單機版和移動端APP(ScratchJr)。
圖1 截圖自Scratch官方網(wǎng)頁主頁
圖2 Scratch3.0網(wǎng)頁版工作界面
網(wǎng)頁版需要登錄Scratch官方網(wǎng)頁,注冊賬戶,學(xué)習(xí)觀摩來自全球網(wǎng)友創(chuàng)作的案例,開始創(chuàng)建自己的項目。從主頁上我們可以輕易了解到:Scratch可用于創(chuàng)建故事、游戲和動畫,然后分享給全世界的網(wǎng)友們。
可能是國外網(wǎng)站的原因,瀏覽和刷新速度比較慢,所以甜七爸在網(wǎng)上找了單機版Scratch2.0,工作窗口如下圖,甜七爸在工作界面的各個窗口添加了簡單注釋,來說明各個窗口的主要功能分工。
圖3 Scratch3.0單機版工作界面及注釋
(二)案例詳解
甜七爸的第一個作品是一個動畫,功能很簡單,僅有一個角色,幾行代碼就可以實現(xiàn)(圖片上已有注釋,甜七爸不準(zhǔn)備以此作為案例進(jìn)行詳細(xì)解說,有疑問可以后臺提問)。不過,制作該案例前,得事先準(zhǔn)備幾張孩子的連拍照片,然后在Costumes(造型)窗口逐個修圖。
圖4 Costumes(造型)編輯窗口
圖5 作品一腳本代碼
第二個作品相對復(fù)雜,涉及多個角色,類似我們小時候在游戲機上玩的“超級瑪麗”極簡版。甜七爸準(zhǔn)備以此作品為案例來詳細(xì)介紹Scratch程序代碼編輯過程:
1)情景亂編
關(guān)注甜七爸的朋友們應(yīng)該都知道甜七給自己選的英文名叫Elsa,這是她小時候迷迪士尼動畫《Frozen》(冰雪奇緣)的結(jié)果。至今,甜七臥室的床單被套、身上的T恤、腳上的拖鞋、還有泳衣、泳圈、滑輪、玩具等物品都跟《Frozen》主題有關(guān)。
所以,甜七爸為孩子設(shè)計了一個Elsa(甜七)找Anna的闖關(guān)游戲,要找到在冰雪宮殿的Anna,Elsa需要連續(xù)成功越過障礙物(石頭)5次,否則游戲失敗,Elsa被石頭撞飛。這樣搞怪的情景應(yīng)該是孩子喜歡的,結(jié)果證明甜七爸還是了解孩子的,甜七喜歡得不得了
2)游戲角色分析和編程思路
一般編輯程序代碼前都要先分析程序運行框架,形成編輯代碼的思路,以流程圖的形式描述程序運行邏輯。不過,考慮到游戲設(shè)計面向的對象是孩子,甜七爸嘗試把流程圖做得更加直觀有趣,借用現(xiàn)在流行用思維導(dǎo)圖來實現(xiàn)游戲設(shè)計分析,讓孩子一起參與,如下圖:
圖6 游戲設(shè)計思維導(dǎo)圖(各角色的場景由甜七繪制)
除背景圖片(見圖3工作界面左下部分背景加載窗口)外,該游戲情景涉及4個角色,分別是:
角色1:障礙物(石頭),出現(xiàn)在背景左側(cè),向右側(cè)方向運動;
角色2:穿著斗篷和滑輪的甜七(扮演Elsa),出現(xiàn)在背景右側(cè),可向上跳躍避開迎面而來的石頭;
角色1(石頭)和角色2(Elsa)之間的關(guān)系有兩種情況:第一種情況:兩者碰撞,角色2(Elsa)被撞飛,并發(fā)出慘叫,這時激發(fā)角色3(Game?over!)出現(xiàn),游戲失敗,程序終止運行;第二種情況,角色2(Elsa)成功避開角色1(石頭)5次,激發(fā)角色4的出現(xiàn),游戲成功,角色2(Elsa)與角色4(冰雪宮殿及Anna)相遇,完美結(jié)局。
因此,角色3(Game?over!)和角色4(冰雪宮殿及Anna)的設(shè)置如下:
角色3:游戲失敗提示(Game?over!),在被激發(fā)前,處于隱身狀態(tài),被激發(fā)后,顯示在前臺;
角色4:冰雪宮殿及Anna,在被激發(fā)前,處于隱身狀態(tài),被激發(fā)后,顯示在前臺;
在協(xié)調(diào)4個角色的互動過程中,還需要另外3個要素,包括:
1)為了記錄角色2(Elsa)成功避開角色1(石頭)的次數(shù),或角色1(石頭)觸碰背景右側(cè)邊緣的次數(shù),我們需要一個計數(shù)變量,甜七爸將他取名為count;
2)為了激發(fā)角色3(Game?over!)出現(xiàn),我們需要在角色1(石頭)和角色2(Elsa)碰撞時發(fā)出信號,即message1,以便角色3(Game?over!)接收;
3)為了激發(fā)角色4(冰雪宮殿及Anna)出現(xiàn),我們還需要在計數(shù)變量count達(dá)到5的時候發(fā)出信號,即message2,以便角色4(冰雪宮殿及Anna)接收。
3)程序?qū)崿F(xiàn)
完成上述分析后,就可以在角色窗口(工作界面左下部分,見圖3注釋)分別添加4個角色了。
其中,角色1是系統(tǒng)自帶的,可以在角色窗口點擊添加,從角色庫中尋找,當(dāng)然也可以在造型窗口(見圖4)中自行繪制;角色2是甜七爸在造型窗口導(dǎo)入甜七照片,稍加編輯而成,如果愿意花更多時間,美工基礎(chǔ)好的朋友還可以制作更為精美的作品;角色3是在造型窗口中自行編輯的;角色4取自網(wǎng)絡(luò)圖片,導(dǎo)入角色窗口即可。
接著,就可以開始在腳本編輯窗口開始編輯代碼了。
先在角色窗口選中其中一個角色(如角色1),然后在腳本編輯窗口編輯與角色1對應(yīng)的代碼。針對4個角色,逐個完成代碼編輯。
角色1(石頭)的腳本代碼編輯如下:
圖7 角色1運行腳本及注釋
角色2(Elsa)的腳本代碼編輯如下:
角色1運行腳本及注釋
角色3(Game?over!)的腳本代碼編輯如下:
角色3運行腳本及注釋
角色4(冰雪宮殿及Anna)的腳本代碼編輯如下:
角色4的運行腳本及注釋
完成全部代碼編輯后,就可以點擊程序運行窗口(見圖3左上部分)右上方的小綠旗開始運行游戲了,當(dāng)然也可以點擊
終止程序。
希望各位寶爸寶媽們能夠Enjoy?it!
學(xué)習(xí)過程中想交流,請?zhí)砑游恼履┪驳奈⑿盘枺ㄌ砑訒r說明來意),或后臺留言(回復(fù)時間會比較滯后)。
最后,還是要感謝麻省理工的大牛們?yōu)楹⒆觽冮_發(fā)了這么Cool的編程學(xué)習(xí)工具,讓中年大叔也可以跟著玩一把!
參考資料:
[1]?張飛,不一樣的Scratch編程課。“Alex老師的大腦洞”公眾號,2018-01-29.
[2] 理工男憨爸,寫了20年程序后,我推薦兒童變成應(yīng)該這樣學(xué)。“憨爸在美國”公眾號,2018-08-08.
聲明:本文章由網(wǎng)友投稿作為教育分享用途,如有侵權(quán)原作者可通過郵件及時和我們聯(lián)系刪除

- 上一篇
Scratch第四十五講:微信跳一跳(二)
這一講CC哥對跳一跳的程序進(jìn)行一下完善,主要是增加三種特效,以使這個程序更像微信中的小程序。 讓我們先看一下這三個特效是什么: 大家看到了吧,這三種特效分別是: 1:當(dāng)按下空格鍵的時候,跳棋周圍出現(xiàn)了一些小點,向跳棋飛去,
- 下一篇
SCRATCH少兒編程活動之錘子打僵尸
? ??為豐富轄區(qū)青少年課余生活,促進(jìn)青少年頭腦發(fā)展,葑塘社區(qū)通過智慧社區(qū)、電子顯示屏、QQ群、微信公眾號等多種途徑發(fā)布了SCRATCH少兒編程活動信息。4月13日上午,葑塘社區(qū)團(tuán)支部聯(lián)合關(guān)工委組織,再次開展了SCRATCH少兒編程活動。