孫小娟
(重慶電子工程職業學院 重慶 401331)
K12是美國基礎教育的統稱,K即Kindergarten,12指12個年級,相當于國內由幼兒園至高三。面向K-12的編程,主要是指采用可視化編程語言,即編程過程中采用一切可視化的元素,使原來文本化的編程語言轉化成圖形模塊化,以游戲、情景動畫和積木構建等形式呈現,可隨時看到編程的結果。可視化編程的方式使用戶在編程的同時,鍛煉其編程思想和邏輯思維,將計算機編程與孩子的興趣愛好相結合,加強孩子思維能力的鍛煉。
喬布斯曾經說過,這個國家的每個人都應該學會計算機編程,因為它能教會你如何思考。計算機產品的用戶越來越趨向于低齡化,同時計算機編程的教育相應地也會趨向于低齡化。在歐美許多國家,兒童編程的重要性等同于閱讀、寫作、算數這三項基本技能。許多國家將編程教育納入了公立學校的日常課程。在美國,兒童編程已經儼然是一種普及的教育理念,有完整的教育體系,并已經形成了比較完善的產業鏈。
浙江省2017年的新高考方案已將信息技術(含編程)納入高考科目,雖然國內公立學校很少有開設k12編程教育課程,但民間有很多培訓機構,其中主流K12軟件編程平臺有中國少兒編程網、維度積木、童程童美、編程貓、編玩邊學、小極客、星空少兒編程網和一些scratch相關的培訓機構等,針對硬件的可視化編程有樂高、arduino等,比較少,且普遍是軟硬件分離的。
App inventor,是一款最初由谷歌開發,目前由美國麻省理工學院維護和運營的應用軟件。App inventor使用圖形化的編程界面,即使用戶不熟悉程序設計,沒有專業的編程知識,也可以才用拖拽的方式進行可視化的編程,創建基于安卓的可以在手機設備上運行的應用程序軟件。學生通過創建移動應用程序,并在手機設備上運行,不僅可以獲得創造的樂趣,還可以鍛煉其計算思維、邏輯思維以及解決問題的方法。軟件的基本界面如圖1所示。

圖1 App inventor界面

圖2 scratch界面
scratch是由麻省理工學院媒體實驗室Lifelong Kindergarten小組開發的一個項目,包含編程語言和在線社區,使用者遍布150多個國家,有超過40種的語言版本。scratch的設計初衷用戶是面向8到16歲的孩子,其服務是免費的,允許用戶創建自己的動畫,游戲和故事,還可以通過scratch的在線社區與世界各地的其他共同學習scratch的愛好者一起分享自己創造的勞動成果[1]。軟件的基本界面如圖2所示。
pencilcode是由谷歌工程師DavidBau和他的兒子AnthonyBau一起開發的應用于多個領域的開源項目,是一種基于網頁的在線模塊化編程網站。用戶只需要登陸pencilcode.net網站就可以免費使用該工具。它是一種協作式的編程網站,可以畫畫、音樂及創作游戲,小到6歲的孩子都可以使用它。項目的運行離不開源代碼,pencilcode是完全采用JavaScript語言開發的。軟件的基本界面如圖3所示。

圖3 pencilcode界面
以上三種編程工具均適用于K12用戶,簡單易學,圖文并茂,用戶需要根據自己的需求去選擇適合自己的工具。他們的底層思想都是比較相似的,都是基于積木式編程理念, 學會使用其中一個平臺,希望學習另外一個的時候,比較容易上手。同時,他們又各有特點,
Scratch完全免費且開源,用戶可以自己填充官網沒有的素材;兼容性強,適用于mac、Windows、Ubuntu等操作系統;雖然scratch原本是英文的,但下載安裝后,scratch會根據計算機的ip地址自動轉化語言,如大陸地區下載scratch后,scratch會自動將語言轉化成簡體中文。Scratch也是目前國內少兒編程教育應用最廣泛的工具,因其使用拖拽式,圖形化編程,可以讓孩子更容易理解編程中的邏輯和語句,讓孩子更喜歡編程。Scratch,但需要一直連接主控板,不能將程序上傳至主控板進行更多硬件操作,對高年級學生不適用。
App inventor 是一個可以在安卓手機上快速搭建App的平臺。如果孩子大一點,10歲以上,對手機應用的使用比較熟悉的話,建議學習App Inventor,因為這種語言的開發需要對Android編程有初步的了解,但是開發的應用適用范圍較廣,只要是Android操作系統的移動端都可以使用,而且這個年齡的孩子需要參加一些電子競技比賽。App Inventor開發的應用也可以注入編程機器人,還可以通過二維碼將生成的APK應用下載到其它移動終端,從這一點上看,MIT App Inventor略勝一籌。
Pencil Code是一個協作編程網站,用于繪畫,播放音樂和創建游戲。它也是一個實驗數學函數,幾何,圖形,網頁,模擬和算法的地方。主要語言為Coffeescript,同時支持多種編程語言如Javascript、HTML和CSS。可以調整語言以塊或文本形式工作的編輯器來學習專業的編程語言,創作藝術,音樂,游戲和故事。了解一些藝術,音樂或游戲方面的想法。
總之,App Inventor將編程塊與APP相結合,可以開發手機app應用,理解編程思維的實際應用。Scratch可以制作與編程貓類似的動畫背景和游戲,比較適合做創意、動畫、聲音等,作為創意作品展示功能非常強大。且Scratch平臺有開放接口給Microbit 等外圍設備,那么孩子可以學習跨平臺的鏈接,與創造,這樣可以比較系統的學習,學習會更深入和有一定的教育意義。pencilcode利用其編程塊,可以繪制各種圖案或音樂等,既可以鍛煉藝術細胞又可以學習編程,滿足孩子的好奇心和探索欲。