黎曉芳 鄭小軍 朱育賢 莫葵鳳
摘? 要 計算思維是我國信息技術(shù)新課標的核心內(nèi)容之一,通過編程培養(yǎng)計算思維,是各國普遍采用的重要手段。基于文獻梳理和編程實踐,簡要總結(jié)Scratch、App Inventor、Mixly、LOGO、Kodu和編程貓等圖形化編程工具的特點及使用方法,從軟件功能、學(xué)習(xí)體驗、教學(xué)體驗、更新速度、配套教程和資源、易用性等方面進行對比,并且給出針對新手和熟手的推薦等級。
關(guān)鍵詞 核心素養(yǎng);計算思維;編程;信息技術(shù)
中圖分類號:G652? ? 文獻標識碼:B
文章編號:1671-489X(2019)05-0038-03
1 前言
近年來,計算思維培養(yǎng)越來越受到信息技術(shù)教育工作者的關(guān)注。在我國《普通高中信息技術(shù)課程標準(2017年版)》(以下簡稱“新課標”)中,計算思維成為新課程四大核心素養(yǎng)之一。那么,如何培養(yǎng)計算思維?計算思維和編程思維具有什么關(guān)系?有什么工具可以幫助學(xué)生更好地學(xué)習(xí)編程,幫助教師更好地培養(yǎng)學(xué)生的計算思維?
2 計算思維教育簡要回顧
2006年,周以真教授提出并界定計算思維是運用計算機科學(xué)的基礎(chǔ)概念進行問題求解、系統(tǒng)設(shè)計以及人類行為理解等涵蓋計算機科學(xué)之廣度的一系列思維活動[1]。Cynthia
Selby和John Woollard提出計算思維包括算法思維(Algo-rithmic Thinking)、評估(Evaluation)、分解(Decomposi-tion)、抽象(Abstraction)、概括(Generalisation)五個要素[2]。2011年,美國將計算思維納入《CSTA K-12標準(2011修訂版)》。隨后,在英國2013年“新課程計劃”、澳大利亞2015年“新課程方案”中,計算思維成為新信息技術(shù)課程的重要內(nèi)容[3]。2017年,計算思維成為我國普通高中信息技術(shù)課程的四大學(xué)科核心素養(yǎng)之一。
3 計算思維培養(yǎng)方法
新課標指出,計算思維包含形式化、模型化、自動化和系統(tǒng)化四個方面,通過在信息技術(shù)課程中進行計算思維的培養(yǎng),學(xué)生能夠采用計算機領(lǐng)域的學(xué)科方法界定問題、抽象特征、建立結(jié)構(gòu)模型、合理組織數(shù)據(jù);通過判斷、分析與綜合各種信息資源,運用合理的算法形成解決問題的方案;總結(jié)利用計算機解決問題的過程與方法,并遷移到與之相關(guān)的其他問題解決中[4]。
通過對新課標學(xué)業(yè)要求的分析可以發(fā)現(xiàn),計算思維的主要培養(yǎng)目標與編程思維的“以程序的方式來思考并通過分析概念的本質(zhì)和屬性來解決問題的思維方式”“要求學(xué)習(xí)者了解計算機的代碼如何解釋,認識一些基本的邏輯結(jié)構(gòu)”等目標要求具有極大的相似性,如圖1所示。因此在實踐中,計算思維與編程思維具有很大的關(guān)聯(lián)性。編程思維能夠有效幫助學(xué)習(xí)者了解編程語言并設(shè)計程序的邏輯結(jié)構(gòu),進行程序開發(fā),從而發(fā)展學(xué)生的計算思維[5]。而培養(yǎng)編程思維的重要方法是編寫程序,因此,通過采用編程工具編寫程序,可以有效地促進計算思維的培養(yǎng)。
4 培養(yǎng)計算思維的編程工具和平臺
通過對國內(nèi)外大量文獻梳理可以發(fā)現(xiàn),各國學(xué)者在對計算思維進行培養(yǎng)的實驗過程中,采用的編程語言普遍具有“低地板、高天花板”(Low Floor, High Ceiling)的特點[6]。也就是說,所選擇的編程工具應(yīng)該能夠讓初學(xué)者快速入門,同時能夠擁有較高的功能,使學(xué)習(xí)者在不斷的學(xué)習(xí)進階中使用該工具編寫出功能更強、更完善的程序。另外,針對青少年,所選擇的編程工具還應(yīng)該兼具趣味性、圖形化等特點。圖形化的編程工具通常采用拖拽積木塊語言的方式進行編程,相比復(fù)雜的文本要顯得簡單很多,讓學(xué)生不用過多關(guān)注語法和代碼,更好地專注于編程作品的創(chuàng)作。
Scratch? Scratch是一款圖形化開發(fā)工具,代碼開源,可以進行在線或離線編程。腳本指令通過搭積木的形態(tài)提供給學(xué)習(xí)者使用,界面直觀友好。動畫和腳本編輯實時響應(yīng),用戶可隨時點擊相應(yīng)指令與動畫進行交互,使用門檻低。目前,Scratch已推出3.0版本,采用HTML5編寫。Scratch官網(wǎng)提供簡體中文版,有案例、在線編程頁面和交流社區(qū),針對案例還有教學(xué)課程、活動卡片和教師手冊,學(xué)習(xí)者可以編寫自己的動畫、故事、程序和游戲等交互程序,并且可以把作品分享給全球的用戶。Scratch可將案例生成教案。在教師賬戶下,可為學(xué)生建立群組、賬號,管理學(xué)生的項目和評論內(nèi)容。Scratch有專門的測試鏈接,對作品的積木塊簡潔性和正確性等進行評分。
在官網(wǎng)注冊后,進入編程主界面,可對角色和腳本進行編輯。主界面的左邊是舞臺預(yù)覽區(qū)和角色編輯區(qū),中間是程序指令區(qū)(包含腳本、造型和聲音),右邊是腳本區(qū)。設(shè)計好背景和角色后,點擊相應(yīng)的角色,可對該角色進行積木編輯;在程序中拖拽出積木塊到腳本區(qū),拼接好積木并修改好相應(yīng)的屬性和內(nèi)容后,點擊主頁上方的綠旗腳本開始運行。作品全部完成后,點擊右上角的“分享”按鈕,就可以把作品分享給全世界的Scratch使用者。在對積木進行編輯時,還可以調(diào)出腳本區(qū)右側(cè)的教程。
App Inventor? App Inventor是一款開源、圖形化在線編程平臺,可為Android系統(tǒng)手機編寫程序,創(chuàng)建軟件應(yīng)用程序(APP)。官網(wǎng)提供教程、論壇、教學(xué)課程和資源,幫助用戶學(xué)習(xí)和使用App Inventor。打開廣州市教育信息中心的App Inventor服務(wù)網(wǎng)站,用郵箱注冊后即可登錄進入主界面,點擊左上角的“新建項目”選項卡,選擇相應(yīng)的項目名稱進入設(shè)計頁面,最左邊是組件面板,中間是工作面板,右邊是組件列表和組件屬性。在組件面板中,除了基本的用戶界面、多媒體等功能外,還有傳感器等強硬件感測和樂高機器人控制功能。在組件面板中拖拽相應(yīng)的組件到工作面板中后,可在組件屬性中對相應(yīng)的組件進行大小、顏色、文本、背景圖片等設(shè)置。
在設(shè)計頁面的右上角,單擊“邏輯設(shè)計”按鈕,可以進入積木編輯頁面,程序的“代碼”只包含兩個塊,在積木編輯器打開后,屏幕左側(cè)會有幾個選項,分別為“內(nèi)置塊”和“組件”。拖拽出“內(nèi)置塊”里面的積木塊,可以設(shè)置基本的功能,拖拽出“組件”中相應(yīng)的積木塊拼接到積木中,可以對組件進行進一步的設(shè)置。積木塊全部拼接完畢后,在工作面板中選擇打包為apk文件,在Android手機上安裝之后就可以調(diào)試運行。
Mixly? Mixly是面向創(chuàng)意電子開發(fā)的一款圖形化編程工具,基于Google Blockly核心,支持大部分Arduino硬件,第三方也可以自己制作庫文件。軟件界面簡潔,支持多種語言,免費開源;更新迭代頻繁,一直在優(yōu)化;使用體驗效果好,可以查看圖形化模塊對應(yīng)的代碼;配套教程豐富,適合12歲以上的學(xué)生學(xué)習(xí)使用。通過USB線連接主板與電腦,從官網(wǎng)下載Mixly軟件,安裝程序后,可以在電腦的設(shè)備管理器看到端口。打開Mixly軟件主界面,可以看到主界面左邊是基礎(chǔ)模塊區(qū)和庫模塊區(qū),中間是程序構(gòu)建區(qū),下方是功能區(qū)和提示區(qū)。單擊“打開”按鈕,可找到范例程序并打開,隨后點擊“上傳”;使用第三方庫時,單擊“導(dǎo)入庫”,找到庫文件路徑,選擇庫文件打開導(dǎo)入。要實現(xiàn)對電子設(shè)備的控制,需要進行硬件連接和程序編寫。
1)硬件連接:將擴展板插于主控板后,需要取出相應(yīng)模塊,用傳感器連接線將其與相應(yīng)管腳連接。
2)程序編寫:在庫中找到對應(yīng)模塊,拖拽到程序構(gòu)建區(qū),更改至對應(yīng)管腳,設(shè)置管腳狀態(tài)并組成程序;完成后,點擊“上傳”按鈕,就可以把程序燒到板上,控制擴展板上電子元器件的活動。
LOGO? LOGO語言是第一個兒童編程語言,簡單易用。下載并安裝好LOGO語言后,進入LOGO的主界面,在命令窗口輸入簡單指令,點擊“執(zhí)行”,可以讓海龜在畫面上跟著指令走動,走動的方向可以是上下左右,按照指定的角度移動,加速或減速移動,或讓小海龜重復(fù)執(zhí)行指令的動作。除此之外,還可以通過指令的復(fù)雜組合和排序,創(chuàng)造出人、房子、汽車、動物、抽象圖案等各種東西,甚至可以通過這些繪畫學(xué)習(xí)數(shù)學(xué)微積分。
Kodu? Kodu是面向兒童的可視化編程語言,可以讓孩子自己創(chuàng)造PC或XBox游戲;目前沒有中文版本,在軟件中有一些教程。下載并安裝好PC Kodu后,桌面出現(xiàn)兩個Kodu圖標,一個是關(guān)于參數(shù)設(shè)置的選項卡,另一個可以進入游戲的主界面。點擊圖標進入主界面,選擇NEW WORLD進行新的創(chuàng)作。初學(xué)者可選擇LOAD WORLD,進入“初級編程員”階段。進入游戲頁面后,頁面中間是編輯區(qū),可以對角色和場景進行編輯,頁面下方是工具。要制作一個簡單的游戲,可以從工具中選擇角色,放置到編輯區(qū),設(shè)置好全部角色的相關(guān)屬性后,單擊角色的右鍵,選擇“program”可以進入程序的“編程”頁面。Kodu的基本語句是“WHEN…DO…”,也就是如果想讓某一角色活動,需要在“WHEN”里面設(shè)置基本的活動條件,在“DO”里面設(shè)置當(dāng)執(zhí)行條件后,角色怎樣活動。條件和活動都是圖形化的塊,在操作時只需要單擊進行選擇。程序設(shè)置好后,按鍵盤的“esc”鍵回到游戲頁面,再次按“esc”鍵或者點擊工具欄上的“play game”圖標,就可以進行游戲。
編程貓? 編程貓是針對中國青少年創(chuàng)建的編程平臺。平臺除了編程工具,還有一系列的課程、學(xué)習(xí)社區(qū)、虛擬教室和論壇,并且不定期舉辦各類編程比賽。平臺提供源碼編輯器、代碼島2.0和海龜編輯器三種編程工具。其中,源碼編輯器是圖形化的2D編程工具,代碼島2.0是3D的編程工具,海龜編輯器是學(xué)習(xí)Python
語言的編程工具,可以實現(xiàn)對文本編程和圖形化編程的轉(zhuǎn)換。不同的工具適合不同年齡段的學(xué)生學(xué)習(xí),可在線編程,下載PC客戶端編程,或者下載手機版的軟件進行編程。與編程工具相對應(yīng)的編程課程體系有圖形化編程課、Python代碼編程課、3D代碼島編程課。圖形化編程課是入門級的編程課,主旨是“讓編程像搭積木一樣簡單”。Python代碼編程課是針對高考的考核科目而推出,3D代碼島編程課主張的是沉浸式學(xué)習(xí),在游戲中學(xué)習(xí)編程知識。
目前,編程貓官網(wǎng)有很多體驗課程,不定期在荔枝微課上免費開放“編程貓教師成長課”。通過官網(wǎng)或者客戶端進入源碼編輯器的編程主界面,刪除多余的角色、背景和積木;點擊添加素材按鈕,進入素材商城采集素材并回到“我的素材”中添加素材,在舞臺中調(diào)整好素材的位置和大小;從積木盒子中拖出相應(yīng)的積木到編輯區(qū)按順序拼接,拼接完成后,點擊“開始”按鈕,就可以在舞臺中看到角色按著積木程序運動的情況;確定無誤后,修改作品名稱,點擊“保存”,再點擊“發(fā)布”“確認發(fā)布”按鈕,就可以將自己的作品發(fā)布到學(xué)習(xí)社區(qū)中與他人一同分享。
六款培養(yǎng)計算思維的編程工具比較分析? 以上六款編程工具和平臺各具特色,教師可以通過圖形化編程方式培養(yǎng)學(xué)生的編程能力,發(fā)展計算思維。筆者對這六款工具從軟件功能、學(xué)習(xí)體驗、教學(xué)體驗、更新速度、配套教程和資源、易用性等方面進行對比,并且給出針對新手和熟手的推薦等級,供學(xué)習(xí)者和教師進行參考,如表1所示。
參考文獻
[1]Wing J M. Computational thinking[J].Communica-tions of the ACM,2006,49(3):33-35.
[2]Computational thinking: the developing definition[EB/OL].http://eprints.soton.ac.uk/356481.
[3]肖廣德,高丹陽.計算思維的培養(yǎng):高中信息技術(shù)課程的新選擇[J].現(xiàn)代教育技術(shù),2015(7):38-43.
[4]中華人民共和國教育部.普通高中信息技術(shù)課程標準(2017版)[S].北京:人民教育出版社,2018.
[5]郁曉華,肖敏,王美玲.計算思維培養(yǎng)進行時:在K-12階段的實踐方法與評價[J].遠程教育雜志,2018(2):18-28.
[6]Grover S,Pea R. Computational Thinking in K-12 AReview of the State of the Field[J].Educational Re-searcher,2013(1):38-43.