陳龍倩 徐慧 楊元超
摘要:教師可以借助流程圖來幫助學生梳理Scratch編程程序思路框架。流程圖在Scratch編程教學中有著邏輯性嚴謹、結構簡單、易講解易理解等教學價值。流程圖主要有順序結構、選擇結構以及循環結構這三種基本結構,這三種基本結構能夠對大部分Scratch編程程序進行程序思維框架繪制,并根據三種基本結構在Scratch編程的教學進行了應用策略研究,說明了流程圖的應用能夠幫助學生解決編程問題,培養邏輯思維能力。
關鍵詞:流程圖;Scratch編程;編程教學;應用策略
美國麻省理工學院為迎合時代需求而研發了Scratch編程軟件,讓孩子通過Scratch編程培養邏輯思維能力、動手能力以及解決問題的能力。[1]如何讓學生在教學中理解Scratch程序,梳理解決問題的思路,明白其暗含的邏輯是大多數教師所忽略的教學重點。在計算機領域中,流程圖原本是通過系統的信息流、思想流或組件流的圖形來表示的。流程圖能夠構建出編程程序的可視化思維框架和清晰脈絡,幫助學生學習,而Scratch編程教師往往忽略了流程圖所起到的教學作用及其重要性,在教學中引用流程圖會使編程程序由抽象到具體、由難到易、由繁到簡,是教學語言更加容易理解。
一、流程圖在Scratch編程教學中的價值
流程圖由若干簡單的圖形符號及特殊的說明組成,用以描述程序執行算法,它和結構化編程思想有關系。流程圖與編程程序有異曲同工之處,流程圖是可視化編程的思維框架,具有形象直觀的特點,方便學生理解程序中所含有的邏輯意義。流程圖的缺點主要是占用篇幅大,修改不方便。Scratch編程的學習意義在于培養學生的邏輯思維能力,不側重代碼積木的編碼,因此,代碼積木的篇幅不會過長。[2]流程圖結構嚴謹,在程序操作中若發生問題學生也可以根據流程圖來解決。流程圖簡單規范,帶入Scratch教學中會使學生易操作,教師易講解。流程圖本身邏輯思路清晰,帶入Scratch教學中能促進學生理解,幫助掌握編程知識。
1.結構嚴謹,問題易查找
流程圖的各版塊之間有特定的執行順序,每一種圖形也有特定的執行口令與含義,在執行過程中不會錯也不會亂,結構嚴謹,邏輯清晰。在Scratch編程教學中經常會出現程序運行出問題的情況。學生需要多次反復運行才能夠找出漏洞,不僅復雜而且不容易找出漏洞所在。在流程圖各版塊結構的梳理中就能夠找到漏洞所在,解決疑問。教師借助流程圖進行直觀講解,便于學生掌握。因此,教師可借助流程圖結構嚴謹來發現程序漏洞,直觀地解決問題。
2.簡單規范,教師易教學
流程圖由四種簡單的基本圖形構成,每一種簡單的基本圖形有其特指的說明,四種基本圖形可以構建出順序、選擇和循環三種基本結構。[3]流程圖本身結構規范,教師繪制也較易上手,不會因為在課堂中引入流程圖導致課堂重點偏移、教學時間壓縮。流程圖本身結構簡單,教師易教學,教師講解也較簡單,不會因為引入流程圖而造成學生編程學習負擔。因此,教師在Scratch教學中只需要將四種基本元素講解清楚就可以使教學事半功倍。
3.邏輯清晰,學生易理解
流程圖是描述編程的具體過程和步驟,能夠將程序分成幾個板塊,而每一個版塊又細分為幾個小步驟,各個步驟環環相扣,思路清晰。[4]一般繪制流程圖主要是以時間為線索,與學生生活貼近。學生掌握更加快速,更加便于應用,同時還能夠將編碼程序的思路理清晰。這樣,流程圖轉化成可視化編程程序也更加簡單、直觀,不易出錯。因此,教師使用流程圖來進行教學能夠幫助學生梳理清楚編碼程序的邏輯順序,快速將流程圖轉化成可視化編程。
二、流程圖在Scratch編程教學中的應用策略
在Scratch編程教學中,教師可以借助流程圖對編碼程序進行直觀又精確地分析。學生能夠借助流程圖構建知識網絡體系。流程圖主要有循序結構、選擇結構以及循環結構三種基本結構,就可將Scratch編程課堂所遇到的編程程序轉化成可視化編程框架,促進學生理解與掌握。而且流程圖不拘泥于某種形式,學生通過主題對作品進行分析、繪制流程圖,就可以有效培養學生的邏輯思維能力、提高學生的信息技術操作能力,加強理論與實踐的結合,讓學生在教師引導中,能動地學習Scratch編程。[5]
1.順序結構流程圖的教學應用使編程結構更嚴謹
順序結構是將程序分成很多個小的版塊,各板塊之間按照一定的邏輯順序組合在一起。前一板塊任務得到執行后,才可以執行后一版塊的任務,而流程圖中的箭頭則是執行的方向。流程圖中的圓角矩形表示“開始”,對應著Scratch編程中的事件代碼積木版塊,流程圖中的矩形表示普通工作環節,對應著Scratch編程中的一般代碼積木。而與流程圖中不同的是Scratch編程中不需要箭頭,將代碼積木按照一定邏輯搭建起來即可。
在Scratch編程入門教學中主要以順序結構為主。借助順序結構流程圖可以讓學生理解編程結構必須要按照編碼的順序進行執行。順序結構是必須要理解與掌握的算法,貫穿于每一個編程程序中。在《海底小動畫》動畫中,小魚媽媽看到鯊魚寶寶是先問,“你好,小鯊魚!”再問,“你看到我的小魚寶寶了嗎?”。該動畫所表達的意思是較簡單的,動畫背后的Scratch編程程序編寫也是較容易的,但對于易出錯的初學者查找問題是相當復雜的。在教學中教師借助順序結構流程圖能幫助學生將編程程序結構編寫嚴謹,學生對于編程程序結構的理解也更加清晰與直觀。即使學生出現程序邏輯上的疑問,也可根據直觀的順序流程圖結構發現編程邏輯問題所在。讓學生在教師引導、主動思考、自主動手中完成對Scratch編程程序結構的邏輯理解與梳理,實現邏輯思維能力的鍛煉。
2.選擇結構流程圖的教學應用使編程簡單易講解
選擇結構則是根據該板塊輸出的結果經過一定的條件來進行判斷,再根據判斷的結果來選擇執行的走向,從而控制流程的走向。[6]選擇結構分為單向選擇結構和雙向選擇結構兩種,分別對應著Scratch編程中的“如果……那么……”、“如果……那么……否則……”代碼積木。而判斷的條件則對應著Scratch編程中的偵測板塊中的代碼積木,學生根據程序的要求進行選擇與適配。
在Scratch編程進階課程中會以選擇結構來教學。選擇結構的流程圖能將抽象知識點化繁瑣為簡單,便于學生理解與教師教學。在《歡樂吃豆人》游戲中,如果吃豆人碰到小紅豆就會變成一下個地圖場景,再加上判斷條件“是否碰到紅色”代碼積木,就完成了選擇程序的講解。但,邏輯思維能力較弱的小學生僅通過教師枯燥的語言來理解單向選擇程序會很困難。讓學生通過小組合作繪制單向選擇結構的流程圖,在探討中完成對流程圖的修改與理解,再將流程圖轉化成Scratch編程程序,也不易出現錯誤,教師教學也更加簡單易操作。[7]教師可以根據學生單向選擇結構的理解情況進行雙向選擇結構的引入與講解,引入可通過提問,“如果增加游戲難度,讓吃豆人沒碰到小紅豆之前一直掉分,怎么做呢?”來引發學生對于雙向選擇程序的思考。促進學生對于選擇結構程序的理解與運用,提升學生的邏輯思維能力。
3.循環結構流程圖的教學應用使編程邏輯更清晰
循環結構則是為了重復執行某一程序所設置的一種程序結構。而Scratch編程中執行該結構時會出現三種情況,從易到難分別是:一是不需要判斷,只需要執行重復執行。二是先執行重復執行再判斷是否滿足輸出的條件。三是先判斷條件是否滿足重復執行的要求再進行重復執行。分別對應著Scratch編程中的“重復執行”、“重復執行直到……”以及“如果……重復執行直到……那么……”三種代碼積木。
在Scratch編程教學中,教師為了引導學生更好地掌握循環結構,一般會從最簡單的“重復執行”代碼積木開始講解。在《幸運王》游戲中就需要使用“重復執行”代碼積木結合旋轉代碼積木讓轉盤旋轉起來。在流程圖的繪制中,學生能夠梳理清楚《幸運王》游戲程序思路,培養邏輯思維能力。接著加深難度,讓轉盤旋轉直到空格按下。僅僅在流程圖上面加了一個判斷條件,學生就掌握了第兩種循環結構。教師根據學生對于前兩種循環結構程序理解情況引出第三種循環程序結構,教師可提問“如何完成空格按下轉盤開始旋轉,再次按下空格轉盤停止旋轉?”引導學生思考。讓學生在自主探究、教師講解中明白循環結構的三種情況的編程邏輯,培養邏輯思維能力。
流程圖有著結構簡單、表達清晰、邏輯性強以及易轉化成可視化編程的優勢[8]。在Scratch編程中運用流程圖引導學生自主學習編程,可以使理解程序事半功倍,也可以促進學生對Scratch程序語言的理解與掌握,同時培養學生的邏輯思維能力、提升編程思維。
參考文獻:
[1]陳鵬,趙麗.少兒編程火爆背后的喜與憂[J].商業觀察,2019(03):74-79
[2]梁宇恩,鄒會來,戴堅鋒.流程圖在程序設計語言教學中的應用[J].教育教學論壇,2018(44):186-187.
[3]梁宇恩,鄒會來,戴堅鋒.流程圖在程序設計語言教學中的應用[J].教育教學論壇,2018(44):186-187.
[4]陳莉,倪剛.基于流程圖的可視化教學過程設計的研究[J].課程教育研究,2018(37):230-231.
[5]麥茵.流程圖在小學Scratch編程教學中的實踐與探索[J].智力,2020(24):147-148.
[6]張向偉.蛇形管道機器人系統研究[D].長安大學,2017.
[7]王倩倩,劉長征,劉圓,張甜.思維導圖和流程圖在Scratch教學中的應用[J].現代計算機,2020(17):79-84.
[8]衛夢婷,錢耀剛.流程圖助力小學生Scratch編程解決問題能力培養[J].中國信息技術教育,2019(19):52-54.
重慶第二師范學院 重慶 南岸 400065