黃紅偉
摘要:本文首先對計算思維相關概念進行介紹,在此基礎上總結出使用計算思維進行教學的方法和注意事項;然后以Scratch小車巡線為例,對使用計算思維進行具體教學進行了展示和分析,并在此過程中進一步闡釋了計算思維的核心思想;最后對計算思維在教學中的使用進行了總結。
關鍵詞:計算思維;Scratch;編程教學;小車巡線
中圖分類號:G434? 文獻標識碼:A? 論文編號:1674-2117(2019)19-0037-04
● 引言
計算思維在當前教育領域備受關注,除了信息技術教師,國內外眾多專家、教授也正在開展相關研究?!镀胀ǜ咧行畔⒓夹g課程標準(2017年版)》中明確指出,信息技術學科核心素養(yǎng)由信息意識、計算思維、數字化學習與創(chuàng)新、信息社會責任四個核心要素組成。[1]計算思維逐步走進中學信息技術教師的視野。在國外中小學信息技術教育中計算思維也備受關注。美國計算機學科教師協(xié)會(Computer Science Teacher Association)2011年推出了新版本“K-12計算機課程標準”,計算思維是其重要內容之一。2013年英國公布新的中小學國家課程——計算(Computing),取代原來的ICT(Information and Communication Technology),計算思維也是其重要內容。計算思維在國內外都引起高度重視。因此,在中小學如何有效地培養(yǎng)學生的計算思維值得探討。
● 計算思維的概念及理解
2006年,美國卡內基梅隆大學周以真(Jeannette M. Wing)教授在美國計算機權威刊物Comimmications of the ACM上提出計算思維(Computational Thinking)的概念。周教授從計算機實際教學出發(fā)對計算思維進行了闡釋。周教授認為,計算思維是運用計算機科學的基礎概念進行問題求解、系統(tǒng)設計,以及人類行為理解等涵蓋計算機科學之廣度的一系列思維活動。[2]可以看到,計算思維的思想來源于計算機科學,整個邏輯體系有明顯的算法思維。
2013年,英國南安普敦大學的Cynthia Selby博士和John Woollard博士提出計算思維包括算法思維(Algorithmic Thinking)、評估(Evaluation)、分解(Decomposition)、抽象(Abstraction)、概括 (Generalisation)這五個方面的要素。[3]算法思維是采用編程解決問題的方式,首先對問題進行抽象,建立模型,然后將大的問題分解、細化,最后通過編程解決問題。計算思維源于計算機學科,其內涵在算法思維基礎上進行了擴展和升華。計算思維的核心是通過流程控制,讓受眾找到解決問題的方法,再按照明確步驟一步步解決。該思想不僅僅適用于計算機相關學科,同樣適用于其他所有學科及我們的日常生活。
● 基于計算思維的Scratch教學
Scratch是麻省理工學院的終身幼稚園團隊(Lifelong Kindergarten Group)開發(fā)的圖形化編程工具,主要面對青少年開放。在Scratch編程作品中最常用的計算概念有七個:順序、循環(huán)、并行、事件、條件、運算符和數據。[4]相對于代碼形式編程,Scratch具有如下優(yōu)勢:①將代碼封裝為可以拖動的“積木塊”,更易上手。②通過不同積木塊可以實現(xiàn)簡單的圖片、音頻以及動畫效果,趣味性強。③圖形化代替代碼編程,避免了語法錯誤,節(jié)省了語法調試時間。
Scratch編程因其趣味性及易用性而迅速在國內外中小學普及。國內很多中小學都開設了Scratch編程課程,但同時也暴露出許多問題,如:①各階段(小學、初中以及高中)教學重點不突出,沒有層次感;②Scratch軟件內容講解遠勝于程序思維培養(yǎng);③以結果為導向,重結果,輕過程,即教師在安排教學任務時太注重學生對知識點的掌握和作業(yè)完成情況,而忽略了問題分析、思維引導,從而導致思維培養(yǎng)的缺失。
編程課程原本是最好開展計算思維培養(yǎng)教學的課程,卻由于上述原因導致對學生計算思維能力培養(yǎng)的弱化。因此,筆者在前文中一直稱其為“Scratch編程教學”,而實際上應為“Scratch程序設計教學”。前者的重點是“編程”,重在體驗與實踐,后者的落腳點則是“設計”,注重學生思維的培養(yǎng)、能力的形成。Scratch教學應該以學生計算思維培養(yǎng)為核心,注重培養(yǎng)學生分析問題、解決問題的能力,而不是軟件操作、技能學習。所以,教師在教學設計時應該分配更多時間在問題引導、問題分析上,弱化具體知識與技能。當然,也可以利用自學手冊或者自主學習平臺讓學生完成知識與技能的學習。
● 計算思維在Scratch教學中的實踐
在中小學Scratch教學中,教師應根據具體教學內容,在把握整體的前提下合理分配教學任務,考慮計算思維的各方面要素,或利用其中一種或幾種思維方式來設計課堂教學活動。下面,筆者通過“巡線小車”的教學案例來分析如何在Scratch教學中實現(xiàn)對學生計算思維能力的培養(yǎng)。
1.巡線小車任務
要完成小車巡線,首先需要完成小車的繪制和巡線軌跡的繪制,教師先準備好如圖1所示的簡易小車模型并繪制巡線軌跡,如圖2所示。
然后將小車角色大小設為定值,起始坐標統(tǒng)一。每位學生都需要設計程序完成小車從起點通過巡線到達終點的任務,并且在巡線過程中不能出現(xiàn)飛線的情況(飛線:小車頭部兩個圓出現(xiàn)在黑線的同一側)。為了增加課堂的趣味性,同時發(fā)揮學生的競爭意識,這里加入背景音樂和計時器功能,每位學生都可以看到自己小車巡線完成需要的時間。初始化代碼如上頁圖3、圖4所示。
在教學安排上,教師應該提前將課堂任務所需的素材準備好,這樣可以有效節(jié)省課堂時間,為計算思維培養(yǎng)留出足夠時間。