鄧正杰 楊帥森


摘要:少兒編程已經成為時下少兒學習的一個主要部分。本文介紹了少兒編程教學的發展現狀和未來發展方向,并以調試模塊的教學為主要研究對象,分析了調試模塊的教育在不同教學場景中的具體實施。利用Scratch少兒編程軟件,針對不同年齡段的孩子們設計了三個教育方案和配套的益智游戲。經過分析和設計,展示調試模塊的學習有助于學生批判性思維能力和邏輯思維能力的建立,對學生動手能力和學習效率也有顯著提升。
關鍵詞:少兒;編程;調試;Scratch;教學
中圖分類號:G434? ? ? ? 文獻標識碼:A
文章編號:1009-3044(2019)26-0123-03
開放科學(資源服務)標識碼(OSID):
Abstract: Recently, children programming has become a major part of children learnings. This paper introduces the present situation and future development of children programming education, and takes the debugging module teaching as the main research object, and analyzes the concrete implementation of debugging module teaching in different scenes. Using the Scratch — a children programming software, three sample programs and the relative puzzle games are designed for the children with different ages. Through analyzing and designing, it is shown that the learning of debugging module is helpful to establish student's critical thinking and logical thinking abilities, and has a significant improvement on student's practical ability and learning efficiency.
Key words:children;programming; debug; Scratch;teaching
1 引言
隨著人工智能、大數據、云計算等技術的發展,人們對編程能力的需求越來越普遍,使得世界各地逐步推進少兒編程教育。西摩爾·佩普特教授于1968創立LOGO程序語言,并將其運用于教育學領域[1]。四十年后,他曾經的博士生Mitch在麻省理工學院帶領開發團隊創造了Scratch少兒編程軟件,就是這一款積木式編程軟件,將少兒編程的理念第一次推廣開來,這次少兒編程教學不再僅僅局限于教育學家和計算機科學家的視野內,而是引起了各行各業的關注。
1.1 研究意義
西摩爾·佩普特在50年前創立LOGO程序語言時,就認為少兒編程教學的核心不是教會孩子編程,而是通過學習編程來教會孩子思考,建立良好的思維模式[2]。當下少兒編程的眾多教學模塊中,調試模塊作為最為抽象的存在,在實際的教學場景中能教給孩子的不僅僅是找出程序錯誤然后修改錯誤那么簡單,更重要的是能夠為孩子建立批判性思維能力和邏輯思維能力,這種思維能力在孩子以后的日常生活和成長學習過程中起到的作用不可估量。
批判性思維能力更是當代高等教育的主要目標之一,但是研究表明6-12歲的孩子正是大腦發育最為重要的時期,同時該階段孩子的思維能力和思維模式開始初步建立。而少兒編程教學調試模塊的學習剛好可以給該階段的孩子們提供良好的引導,讓孩子在學習調試程序的過程中建立初步的邏輯思維能力,所以少兒編程教學的意義不僅在課堂之上,更在課堂之外。
2 國內外研究現狀
2.1國內研究和發展現狀
我國的少兒編程教學起步較晚,直到2014年STEM的概念逐漸在國內普及,中國的少兒編程行業才開始正式的發展。2016年,國家開始主動支持少兒編程教學的發展,2017年,浙江省將信息技術提升為高考科目,進一步推動少兒編程教學的發展[3]。從2017年至今,少兒編程教學在國內進入高速發展階段,“編程貓”等少兒編程教學研究公司在線上推出了許多的優秀課程,“小碼王”等線下少兒編程教學機構也被人們逐漸接受[4]。
但是國內少兒編程教學的發展還是遠遠落后于國外,開設少兒編程教學科目的學校數量較少,而且大部分集中在北上廣等一線城市。調查顯示,以Scratch為例,目前國內少兒編程教學的滲透率為0.96%,而美國的少兒編程教學滲透率為44.8%[5]。與國外的普及度相比,我國少兒編程教學的發展,任重而道遠。
2.2國外研究和發展現狀
國外的少兒編程教學起步較早,自LOGO語言問世起至今已有五十余年,目前國外少兒編程教學領域應用較多的有LOGO語言、KODU語言、CodeMonkey少兒編程工具、Scratch少兒編程軟件等[6]。在美國,LOGO語言最開始是用于中小學課堂的數學教育,后來有教育學者發現它在教育學生編程方面有著突出的教育效果,于是開始將LOGO語言用于少兒編程教學[7]。CodeMonkey少兒編程工具誕生于以色列,并在近幾年以色列政府的大力推廣下,受到了很多教育學家和學生的喜愛,在全球范圍內已經擁有了大量的粉絲[8]。另外英國、日本、韓國等國家也出臺了相應政策支持少兒編程教學的發展。
Scratch少兒編程軟件于2014年問世,是由美國麻省理工學院的研發團隊設計開發的,該軟件使用圖形化的指令積木進行程序編寫,讓學習編寫程序的過程變得像玩“樂高積木”一樣有趣。目前正式發行的是Scratch2.0版本,較之舊版本增添了克隆和聲音編輯等多個指令積木模塊,讓軟件的整體功能更加完善,能夠基本滿足孩子們在學習編程時的各種設計需求[9]。由于該軟件功能比較全面,積木式的編程方式也簡潔有趣,所以深受廣大學生以及眾多教育工作者的一致好評。
3 少兒編程調試模塊教學的分析
3.1少兒編程調試模塊與C語言調試模塊的比較
少兒編程由于所針對的用戶主要為中小學生甚至學齡前兒童,所以在編程界面和編程模式方面更加的簡單,在教學過程中也更加注重學生編程思想的建立,其次才是編程能力的鍛煉。C語言是一門實用性的編程語言,教學對象大多為大學生或者從事計算機行業的專業人士,語言學習和編程難度比少兒編程高上許多,在教學上也更加注重編程能力的培養。
C語言程序代碼復雜而且數量龐大,所以調試過程更加具備專業性,必須多方面考慮,運用到多種調試技術方能解決問題。少兒編程在調試模塊的教學中由于使用代碼簡單的因素,只能運用一些經典而簡單的程序錯誤來進行調試模塊的教學,所以重點在于讓學生通過簡單程序的調試來建立起程序調試的理念和批判性思維能力,為學生以后的學習打下基礎。
3.2少兒編程調試模塊與非調試模塊的比較
在少兒編程的多個教學模塊中,調試模塊最為抽象卻也最為重要,無論任何一門編程語言的學習,該語言的調試必然貫穿于整個教學過程。少兒編程調試模塊的教學由于自身的抽象性,無法像非調試模塊一樣在課堂中展示明確的概念和使用方法,所以‘調試更多的是一種思維上的訓練,而且調試模塊更能幫助學生培養批判性思維能力,也能起到訓練邏輯思維能力的目的。有研究表明,在計算機程序設計的課堂上,著重對程序調試的訓練,有助于加強學生對技術知識和調試理論的理解程度,同時還可以顯著提升學生的動手能力,提高學習效率[10]。
3.3少兒編程調試教學在教育中的意義
計算機專業的特性之一,就是其擁有特別強的“實驗性”[11],所以“調試”是編程過程中最為重要的一個環節,但是很多計算機專業的新生都困惑于怎樣合理的去調試程序,甚至因此失去對計算機專業的興趣[12]。歸其原因,缺乏系統專業的調試技巧學習是一方面因素,不過學生自身缺乏良好的邏輯思維能力和批判性思維能力顯然是更為重要的原因,而6-12歲正是培養這兩方面思維能力最好的時期。
4 少兒編程調試模塊教學的設計
4.1 Scratch游戲設計
第一個游戲的教學對象是小學一年級學生,調試難度比較簡單。“小老鼠”和“奶酪”之間沒有設置障礙物和陷阱,調試過程也只有“前進一步”“向左轉”“向右轉”等幾個簡單的指令積木(如圖1)。學生可以通過增加或者刪除積木塊來達到學習調試程序的目的。
第二個游戲的教學對象是小學三年級學生,游戲主角和通關任務沒有大的變化,只是鑒于學生認知能力和編程能力的提升,在原來的指令積木基礎上又添加了“循環執行”積木,并且在游戲地圖上設置了障礙物和陷阱,增加了調試難度的同時也增加了游戲趣味性(如圖2)。學生在可以在完成游戲任務的過程中進一步的學習調試,同時加深自己對循環語句的理解,鍛煉自己的批判性思維能力和邏輯思維能力。
第三個游戲的教學對象是小學六年級學生,該階段的學生思維能力方面已經有了很高的提升,故本設計在這個游戲中加入了“函數調用”模塊(如圖3)。這代表著將要調試的程序從原來的四五行代碼,升級到十幾行代碼,并且整個過程中多次調用到目標函數,使得調試難度進一步增加,更加適合該階段學生學習使用。
4.2 教學方案設計
本文在設計教案之初,對本文教案的定位為一系列課程中調試模塊的教學設計,并非獨立的課程。在教案設計方面,考慮到少兒編程教學的學生年齡跨度的范圍,分析了各個年級學生學習能力方面的差異。以一年級、三年級、六年級學生為教學對象,將調試教學分為三個階段。
一年級的學生尚未具備完善的學習能力,閱讀能力也僅僅處在初級階段,但是此階段的學生已經初步學習了簡單的算術,關于方向的認知能力也基本完善。經過分析之后,決定在一年級的調試教學中使用簡單序列,讓學生通過簡單的算術得出‘小老鼠移動步數,通過‘向左轉‘向右轉等簡單指令協助完成任務,教學過程中在步數或者方向上設置出錯點,引導學生調試。
三年級的學生在算術和閱讀方面已經有了良好的基礎,思維邏輯能力也已經有了初步的建立,所以在設計三年級的教學方案時采用了循環語句,第一是為了增加調試難度,其次更是為了適應該年齡段孩子思維邏輯能力的發展進度。
六年級的學生在閱讀能力、數學能力等方面已經基本成熟,對事物的目的性更加明確,感知事物的精確性也有了顯著提升,簡單的調試教學已經不足以起到鍛煉思維的作用,但是在加深調試難度的同時也要顧及該階段學生的學習水平,所以本文在分析之后決定采用函數調用模塊的調試來進行教學設計。
5 總結
本文通過對少兒編程教學行業的分析,認為在目前的大環境下,世界多個國都制定了相應政策用于少兒編程教學的推廣,少兒編程教學的重要性只會隨著時間的推移逐步加深。在針對少兒編程調試模塊進行單獨分析之后,本文認為調試模塊的學習有助于學生批判性思維能力和邏輯思維能力的建立,對學生動手能力和學習效率也有顯著提升。本文使用Scratch少兒編程軟件設計了三個關于調試模塊教學的教學方案和教學游戲,用以幫助學生更好的對少兒編程教學調試模塊進行學習。
參考文獻:
[1]葉富華. LOGO(小海龜)編程之父留給我們的思想遺產[DB/OL]. http://www.kidscode.cn/archives/3720.
[2]柳紅,陳琦.學習LOGO程序設計語言與發展認知能力的關系[J].心理科學通訊,1990(05):3-9+65.
[3]itwriter.50年前開始的少兒編程,如今在國內發展怎么樣了[DB/OL]. https://news.cnblogs.com/n/598264/.
[4]中國少兒編程行業研究報告 2018年[A].艾瑞咨詢系列研究報告(2018年第10期)[C].上海艾瑞市場咨詢有限公司,2018:34.
[5]雷田蕊. Scratch編程教育學習資源設計與開發研究[D].河北大學,2018.
[6]戚偉慧.少兒編程的可行性研究與分析[J].電子技術與軟件工程,2016(24):253-254.
[7]王榮良.兒童編程教育價值與實施途徑分析[J].中國信息技術教育,2017(21):5-9.
[8]徐君. 跟著 Code Monkey,和全球 250 萬名孩子一起玩編程[DB/OL]. http://www.360doc.com/content/16/0719/08/5315_576689752.shtml.
[9]朱麗彬,金炳堯.Scratch程序設計課教學實踐研究——基于體驗學習圈的視角[J].現代教育技術,2013,23(07):30-33.
[10]王楠,趙占芳.調試技術在程序設計實驗教學中的應用探討[J].教育現代化,2017,4(07):46-47+53.
[11]王立柱.從計算機教育到教育計算機[J].計算機教育,2013(03):42-45.
[12]王春枝,嚴靈毓,張媛媛.編程從調程做起[J].計算機教育,2016(01):100-102.
【通聯編輯:王力】