推薦幾款兒童編程啟蒙工具

隨著社會的進一步發展,進而對人才的要求進一步提高,計算思維將會成為衡量人才的重要標準,而兒童編程將會成為今後的趨勢。那麼,如何選擇合適的語言來給兒童做編程啟蒙呢?今天林子便列舉一些常見的國內外適合兒童編程啟蒙的編程語言和工具供大家參考。

01 Scratch 支持平台:Web/iOS/Android/ Linux

簡介:

Scratch是由MIT(麻省理工學院)Lifelong Kindergarten Lab開發的一款免費的兒童編程語言。這門開放語言有配套的入門教程、家長課程指南和強大的用戶社區,甚至還有Scratch編程卡片可供離線學習使用。可見Scratch的學習資源非常豐富。

特點一:可視化界面,編程的過程像玩遊戲一樣輕鬆

Advertisements

Scratch是一款可視化編程語言,其中有一系列可拼接的代碼塊,編程的過程就像搭積木一樣,這樣的可視化界面為兒童(和家長)創造了更多的腳手架體驗。整個編程過程就是把一些編程組件堆疊在一起從而實現特定功能,根據功能不同,組件又可以分為動作類組件、事件類組件和操作類組件。

Scratch中還有一個特別人性化的設計,不同功能的塊形狀不同,比如事件塊與動作塊的形狀就不一樣,而且塊的形狀決定了只允許它與一個(或一類)兼容的對象組合,這就很好地避免了一些語法錯誤。當兩個塊無法實現順利拼搭的時候,其實就在提醒兒童當前的做法是有錯誤的,兒童可以通過這樣的反饋來得到暗示從而會進一步思考尋找正確的解決方法。所以可以看到Sratch的設計非常適合幫助兒童培養發現問題、解決問題的能力。

Advertisements

特點二:支持一鍵分享,兒童的作品可以被全世界看到

在Scratch中,兒童可以使用系統中預設的圖像或字元來開發遊戲或動畫,也可以自定義上傳圖片。Scratch不僅支持在線也支持離線使用,Scratch社區還支持項目分享,兒童可以將他們的作品分享在社區中,兒童的作品可以被全世界看到。

如果小朋友沒有創作思路,也可以去社區中查看別人的作品,還可以一鍵查看作品的邏輯設計,為小朋友自學和研究編程提供了很好的支持。另外Scratch Jr和Scratch kid是Scratch的精簡版,更適合年學齡前兒童。

>>>>

推薦理由:

之所以第一個推薦Scratch不僅因為它免費開放,而且它有很多成熟的配套免費資源。由於Scratch學習參考資料也十分豐富,所以非常適合家長和兒童一起學習。國內最早的教育創客之一,溫州中學信息技術老師謝作如教師和他的研究生團隊開發了基於Arduino創意機器人的Scratch開源課程,並且開發了一個融在線編程和在線教學、交流於一體的平台-----好好搭搭在線。整套Scratch開源課程由杭州下城區骨幹教師開發,共12課,非常適合小學初學者。課程包含電子教材、參考程序、微課等一系列教學資源,也算是國內Scratch方面比較成熟的研究成果。相關參考:Scratch開源課程重磅推出

02 Blockly 支持平台:Windows, Mac OS, or Linux

簡介:

Blockly是Google在Scratch基礎上的改進版本,跟Scratch類似,Blockly的編程原理也是組件拼接來實現相應的功能。不同的是,Blockly可以輸出不同類型的代碼(如圖所示:左邊的塊狀語言拼接圖,右邊則是源代碼),目前Blckly支持的代碼類型包括JavasScript,Python,PHP,Lua和Dart。對於不精通專業編程的人來說,Blockly是一款不可多得的好用的視覺編輯器,從這個角度來說它就不僅僅是一款面向兒童的編程語言了。

特點:支持多種語言輸出

用Blockly編程的時候,可以在屏幕一側編程,在屏幕另一側看到代碼(如圖所示)。Blockly還有一個驚艷的功能是能夠及時切換任意一種編程語言,如果你想看看不同的編程語言在具體某一個語法上的差異,直接切換就可以做到。這樣的功能使得Blockly非常適合各種年齡段的學習者,包括年齡較大的兒童和年齡較長的成年人,對於年齡較大的兒童和成年人,可能對Scratch的漫畫功能不那麼感興趣,相反,他們更青睞編程的核心原理,Blockly無疑成為合適的選擇。

Blockly是從Scratch基礎上發展起來,但兩者之間的過渡跨越非常大,實際上Google與麻省理工學院一起開發的下一代Scratch便是是基於Blockly平台,我們可以預測升級后的Scratch功能將更強大,兼容性將更好。

事實上,在App Inventor開發中,Blockly就起到了關鍵的支撐作用,App Inventor是一款可用於開發Android應用程序的語言(雲端微課連續發了很多AppInventor系列教程),Google已經將該項目移交給麻省理工學院。

由於Blockly屬於後起之秀,因此Blockly還沒有像Scratch那樣開發完全,目前還沒有足夠多的指引教程和參考資料。由於Blockly適合所有年齡段的開發者,我們可以預想它是一款非常有潛力的編程語言。

03 Alice

簡介:

Alice 是一款免費的3D編程工具,由卡內基 - 梅隆大學開發,它旨在教授面向對象編程語言(如C ++、Java)的一些概念,如事件驅動。同樣地,它也是使用構建塊的方法,通過對相機動作、3D模型以及場景的綜合控制來創建遊戲或動畫。

Alice中的程序或「方法」甚至可以轉到Java 的集成開發環境中,比如NetBeans,這樣的好處是,學生可以在編程的時候從視覺構建塊界面轉換為標準編程語言。

04 Swift Playgrounds 支持設備:iPad

簡介:

Swift是2014年WWDC(蘋果開發者大會)發布的新開發語言,可以與Objective-C共同運行於Mac OS和iOS平台。 Swift Playgrounds是一款iPad遊戲,旨在教孩子們如何在Swift中進行編程。這款遊戲可以從蘋果商店免費下載,適用於零基礎編程人員。

>>>>

特點:

該應用程序包含許多關於不同Swift命令的教程,比如說,在3D世界中去移動一個名為Byte的字元。儘管不需要編程基礎,但是孩子們需要去閱讀指引教程並且有一些解決問題的耐心。該應用的編程方式依然採用拖拽式,但是該應用並沒有使用跟Scratch和Blockly一樣的互鎖塊界面。

一旦孩子精通Swift Playgrounds,他們就可以開始學習Swift開發。看,邊玩遊戲邊學編程,真是一舉兩得的事情。

總結:

兒童編程工具的特點是趣味性十足且弱化了編程核心的原理,可以讓兒童在玩遊戲中get到編程概念和計算思維。當然市面上還有很多適合兒童的編程工具,每一種編程工具都有各自的特點,雖然很多遊戲或者編程語言看起來有很大不同,但是其培養的核心素養或者說編程概念都大同小異。所以建議家長根據孩子的年齡特點選擇一款編程語言或遊戲作為孩子的編程啟蒙工具。建議家長和孩子一起學,學的過程中,家長可以適當地做引導,由於有些編程語言僅支持英文,所以家長的指引就顯得尤為重要,家長也可以藉機培養孩子的英語,可謂一舉兩得。

本文參考:

https://www.lifewire.com/kids-programming-languages-4125938

https://scratch.mit.edu/

https://developers.google.com/blockly/

https://www.alice.org/index.php

https://www.apple.com/swift/playgrounds/

文:林子 圖:來自網路

林子

IT女教師,靠譜女青年

從教4年,保持學習初心

使命:生命影響生命

關注我,一起成長,遇見更好的自己!

Advertisements

你可能會喜歡