Scratch是由MIT的LLK團(tuán)隊專門為兒童設(shè)計的積木式(也叫圖形化)編程軟件,。Scratch簡單易學(xué),且趣味性十足,,深受全球兒童的喜歡,,是小朋友們開始編程啟蒙的首選軟件。值得一提的是,,Scratch是開源軟件,,其源代碼是公開的。市面上許多積木式編程軟件(這里就不點名啦)其實都是在Scratch源代碼基礎(chǔ)上開發(fā)的,,因此和Scratch大同小異,。小朋友們想學(xué)習(xí)編程,認(rèn)準(zhǔn)Scratch就可以啦,!
Scratch又分為兩個版本,,分別適合不同年齡段的小朋友們。其中ScratchJr是Scratch的裁剪版,,更適合5~7歲的學(xué)齡前兒童,。Scratch3.0是Scratch的最新版,更適合8~10歲的低年級學(xué)生,。
如前所述,,ScratchJr功能更加簡單,比較適合5~7學(xué)的齡前兒童,。Scratch3則相對比較復(fù)雜,,適合8~12歲的低年級學(xué)生。學(xué)齡前兒童在學(xué)習(xí)ScratchJr之后,,很容易就可以過渡到Scratch3,。一二三年級小學(xué)生已經(jīng)有了一定的知識儲備,理解能力也更強(qiáng),,可以直接從Scratch3學(xué)起,。我們在后文會詳細(xì)介紹二者在功能和操作上的各種差異。學(xué)習(xí)少兒編程的諸多好處我們有專門的文章進(jìn)行介紹,,這里就不贅述了,,家長朋友們可以按照下面這幅圖來為自己的孩子選擇合適的。
ScratchJr專門針對手機(jī)和平板電腦設(shè)計,,更適合觸摸屏設(shè)備,,小朋友們拖拖拽拽就可以操作,非常簡單,。Scratch3由于功能更加復(fù)雜,,比如可以響應(yīng)鼠標(biāo)和鍵盤事件,因此更適合在筆記本電腦和臺式機(jī)上安裝。雖然ScratchJr可以在手機(jī)上安裝,,但是我們并不推薦,。因為手機(jī)屏幕太小,長時間盯著手機(jī)屏幕看可能會影響孩子們的視力,。
在ScratchJr里,,編程積木塊是橫著擺放的,更適合觸摸屏設(shè)備,。在Scratch3里,,編程積木塊則是豎著擺放,更適合在筆記本電腦和臺式機(jī)上操作,。
ScratchJr面向的是學(xué)齡前兒童,,因此刻意削減了編程積木塊的種類和數(shù)量,只能編寫一些較為簡單的動畫,、故事或者小游戲,。ScratchJr沒有分支積木,因此是非圖靈完備的,。Scratch3則有完備的編程積木塊,,比如各種分支和循環(huán)積木,是圖靈完備的編程語言,,可以編寫出非常復(fù)雜的故事或者游戲,。
Scratch3其實已經(jīng)非常接近真正的代碼編程語言了,比如Python,、Swift等,。小朋友們通過Scratch3入門以后,很輕松就可以過渡到代碼編程語言,,用英文而非積木塊來編寫程序,。
除了內(nèi)置積木塊,Scratch3還支持自制積木塊,,也就是利用現(xiàn)有的積木塊制作新的積木塊,。另外,,Scratch3還可以添加擴(kuò)展積木塊,,增加畫筆、視頻偵測,、文字朗讀等積木塊,,并且可以通過擴(kuò)展為Micro:bit迷你板或者樂高EV3機(jī)器人等硬件設(shè)備編程,這些都是ScratchJr所不具備的,。
看過話劇的小朋友們都知道,,話劇演出需要一個舞臺,舞臺可以有不同的背景(幕布),,各種角色們可以在舞臺上盡情的表演,。與此類似,,Scratch里也有一個虛擬的舞臺。在ScratchJr里,,舞臺在屏幕上半部分的正中央,。在Scratch3里,舞臺在右上角,。
在ScratchJr里,,我們可以添加最多4個舞臺,每個舞臺都可以獨立放置各種角色,,并且可以通過組合積木塊對每一個角色進(jìn)行編程,。Scratch3則更接近現(xiàn)實中的劇場,也即只有一個舞臺,,但是可以切換不同的背景,,并且背景也沒有數(shù)量限制。在Scratch3里,,也是可以通過組合積木塊給每一個角色編程,。不僅如此,Scratch3還可以給每一個背景進(jìn)行編程,。因此,,相對于ScratchJr,通過Scratch3可以編寫出復(fù)雜的多的故事和游戲,。
ScratchJr和Scratch3都自帶了許多背景圖片和角色,,如果這些自帶的背景和角色不夠用,還可以通過自帶的繪圖工具來繪制背景或者角色,。ScratchJr和Scratch3的繪圖工具大同小異,,都比較簡單,但足夠小朋友們畫出各種好看的背景和角色了,。
ScratchJr和Scratch3繪圖板的一個比較大的不同之處是可選顏色的數(shù)量,。ScratchJr繪畫板只有40種顏色可供選擇,不過應(yīng)該也夠用了吧,,畢竟面向的是學(xué)前班小寶貝們,。相比而言,Scratch3的繪畫板可選的顏色那可就多了,。Scratch3繪畫板使用了HSB(顏色,、飽和度、亮度)色彩模型,,可以在幾百萬種顏色之中選擇,,而且支持漸變等效果,足夠用了!
ScratchJr和Scratch3都有播放聲音的積木塊,,都自帶了一些聲音,,也都支持通過話筒錄制聲音。
ScratchJr和Scratch3都有消息機(jī)制,,不同的角色之間可以通過收發(fā)消息來進(jìn)行互動,。在ScratchJr里,消息是由信封來表示的,,通過顏色來區(qū)分,。ScratchJr消息只有6種顏色,因此可以傳遞的信息非常有限,。在Scratch3里,,消息是通過文字來表示的,不同的文字就表示不同的消息,,因此可以傳遞的信息基本沒有限制,。
ScratchJr的舞臺是基于網(wǎng)格的,一共有15x20個網(wǎng)格,。我們可以通過舞臺上方左數(shù)第二個按鈕來打開或者隱藏網(wǎng)格,,如下圖所示。舞臺上的每個角色都有一個中心點,,我們可以通過這個中心點的行號和列號來定位它,。另外,角色的移動也是基于網(wǎng)格的,。上下左右移動積木塊的默認(rèn)移動格數(shù)是1,,可以改成其它整數(shù)。雖然ScratchJr也有旋轉(zhuǎn)積木塊,,但是它只能旋轉(zhuǎn)角色本身,,無法改變角色的移動方向。
圖形化編程界面:Scratch Jr采用圖形化編程語言,,孩子們不需要輸入復(fù)雜的代碼,,而是通過拖拽和組合形狀來編程。這樣的設(shè)計使得編程更加直觀和有趣,,降低了入門門檻,,讓孩子們能夠快速上手。
創(chuàng)造性表達(dá):Scratch Jr鼓勵孩子們發(fā)揮想象力,,通過自己的創(chuàng)造力來設(shè)計故事,、游戲和動畫。它提供了豐富的角色,、背景和聲音資源,孩子們可以自由選擇和運用這些資源,創(chuàng)造出屬于自己的作品,。
多媒體編程:Scratch Jr支持多媒體元素的編程,,孩子們可以通過拖動圖像、錄制聲音和添加背景音樂,,為自己的作品增添更多的互動和趣味,。
社區(qū)分享:Scratch Jr提供了在線社區(qū),孩子們可以將自己的作品分享給其他人,,還可以觀看和學(xué)習(xí)其他人的作品,。這樣的分享機(jī)制,不僅能夠激發(fā)孩子們的創(chuàng)造力,,還能夠讓他們從互動中學(xué)習(xí)和成長,。
適齡性:Scratch Jr針對4-7歲的孩子設(shè)計,軟件界面簡單直觀,,操作容易上手,,很容易引起孩子們的興趣。而且,,Scratch Jr注重培養(yǎng)孩子們的邏輯思維和創(chuàng)造力,,循序漸進(jìn)地引導(dǎo)孩子們進(jìn)行編程學(xué)習(xí)。
互動性:Scratch Jr支持孩子們分享自己的作品和觀看他人的作品,,這樣的互動和交流機(jī)制能夠激發(fā)孩子們的學(xué)習(xí)興趣,,并且從中學(xué)習(xí)到更多的知識和經(jīng)驗。此外,,Scratch Jr還提供了豐富多樣的角色和背景資源,,可以讓孩子們創(chuàng)造出更加生動有趣的作品。
創(chuàng)造性表達(dá):Scratch Jr鼓勵孩子們發(fā)揮想象力,,以自己的創(chuàng)造力來設(shè)計故事,、游戲和動畫。這樣的創(chuàng)造性表達(dá)方式,,不僅能夠提高孩子們的創(chuàng)造力和創(chuàng)新能力,,還能夠培養(yǎng)他們的問題解決能力和邏輯思維能力。
培養(yǎng)未來技能:編程已經(jīng)成為了21世紀(jì)的一項重要技能,,未來的就業(yè)市場對于懂得編程的人才需求也將越來越高,。通過Scratch Jr的學(xué)習(xí),孩子們可以從小開始接觸和了解編程,,培養(yǎng)他們未來需要的技能和思維方式,,為他們的未來發(fā)展打下堅實的基礎(chǔ)。