馬莉
(珠海市斗門區和風中學,廣東珠海 519000)
在高中程序設計的課堂教學過程中,筆者困惑于一旦不給學生提供程序流程圖,大部分學生就不能完成課程目標。直到筆者看到中華人民共和國教育部制定的《普通高中信息技術課程標準》(2017年版)一書中提到高中信息技術學科核心素養由信息意識、計算思維、數字化學習與創新、信息社會責任四個核心要素組成。其中關于“計算思維”的解讀是指個體運用計算機科學領域的思想方法,在形成問題解決方案的過程中產生的一系列思維活動[1]。
App Inventor是一款谷歌公司開發的手機編程軟件,它是一個完全在線開發的Android編程環境,拋棄復雜的程式代碼而使用積木式的堆疊法來完成Android程式,這一特征尤其適合應用在中學信息技術的編程教學中。而目前計算思維的研究缺乏實踐性的研究,在課堂環境中鮮有落實[2],因此筆者將研究重點放在基于培養學生計算思維的高中信息技術課堂教學設計與實踐。
自2006年卡內基.梅隆大學的周以真教授提出“計算思維”的概念之后,計算思維便在世界信息技術領域掀起了研究熱潮。目前關于計算思維概念的界定有問題解決說、系統說、過程說、活動及方法說、工具說幾個方面[3],其中問題解決說在業界得到的共識比較高,我國《普通高中信息技術課程標準》也是將計算思維的落腳點放在解決問題上,認為“計算思維是指個體運用計算機科學領域的思想方法,在形成問題解決方案的過程中產生的一系列思想活動”。因此,將解決問題作為計算思維的核心要求是符合高中信息技術教學的實際的,本研究在教學活動的設計上也是基于問題解決而展開。
1.文獻研究法
2.歸納演繹法
通過分析、比較、抽象等方法,在已有學者的研究基礎上提出基于培養學生計算思維的高中信息技術課堂教學設計模型。
3.問卷調查法
課前的問卷調查幫助筆者了解高一新生的信息技術學習現狀與學習心理,為后續教學設計提供了參考,對于教學起點的定位十分重要。
4.觀察法
教師在學生的學習過程中充當觀察者的角色,為教學實施提供豐富的個案研究,也可以對單個學生做出更加準確的評價。
“表達差異”又可細分為近義詞、詞義擴大(可以根據語境具體化)、詞義增加(表示強調)、詞義相對(譯者用了相反的思維來翻譯術語)、使用相對的普通詞。“語法差異”又可細分為定語修飾(不同形式的定語)、定語修飾(介詞不同)、名詞性術語譯成句子、從句、動詞短語、介詞短語、名詞術語譯成現在分詞、名詞術語譯成形容詞或過去分詞作定語。
5.訪談法
課后教師與個別學生的訪談,可以讓筆者聽到學生最直接的感受與想法,深入探索學生計算思維學習的歷程,為后續教學改進提供一手的資料。
App Inventor是一款快速開發移動應用的設計工具,它提供了基于web的圖形用戶界面設計工具,編程部分則是將語言塊像玩拼圖游戲一樣拼接在一起。App Inventor基于網頁開發的特點使得它不需要投入更多的教育經費,因而在教育領域可以進行廣泛的應用。它可視化的編程模式大大降低了編程的難度,對學習者計算機編程的基礎要求不高,這些都和我校學生的學習現狀十分契合。近年來,谷歌為了推進App Inventor的學習與創新,借助App Inventor培養學生的計算思維,在全國多個地區舉辦中小學教師培訓,同時組織過多屆中小學生的競賽,得到了國內眾多教師和學生的積極響應,因此筆者相信應用App Inventor在編程教育中培養學生的計算思維是可行的。

圖1 基于計算思維的課程架構
App Inventor是快速開發移動應用的設計工具,它結合教育功能,把程序設計的思想通過代碼塊的拼接實現,它的這一特征尤其適合應用在中學信息技術的課堂教學中。我校也開設了這門課程。我的課程整體設計是每節課讓學生在一個小任務的驅動下學習,不斷完善程序設計的相關知識。學生在開始的幾節課里學習興趣濃厚,積極參與,進步很大,課堂任務完成效率比較高。我以為學生的程序設計能力有了一定的基礎,在后面一節課《貪吃球》的教學過程中,我把之前既定的教學環節“參照程序流程圖編寫程序”故意刪掉了,看看學生能不能自己設計程序并實現,結果令我大跌眼鏡,只有幾位學生能夠獨立完成,并且耗時很久,而大部分學生無法實現編程。課下我努力反思,怎么少了一個流程圖學生就做不出來了呢?
在2017版《普通高中信息技術課程標準》中指出,計算思維是學生信息技術學科需要具備的核心素養之一,如果學生缺乏這項能力,就無法在信息活動中采用計算機處理問題的方式形成解決問題的方案。
本研究的課堂教學設計選擇了ADDLE教學設計模型[4],它體現了科學的教學設計流程:1)學習者、學習內容分析;2)設計教學的策略與活動;3)制定詳細的課程實施方案,開發課程教學所需要的材料;4)實施和開展教學活動;5)進行教學評價。ADDLE教學設計模式如下圖所示:

圖2 ADDLE教學模式流程圖
李藝教授嘗試把學科核心素養細化為三層架構,最底層是“雙基層”,以基礎知識和基本技能為核心;中間層是“問題解決層”,以解決問題過程中所獲得的基本方法為核心;頂層是“計算思維層”,指在系統的學科學習中通過體驗、認識及內化等過程逐步形成相對穩定的思考問題、解決問題的思維方法和價值[5]。筆者認為這個三層架構凸顯了計算思維的核心本質——問題解決,能夠很好地被遷移到計算思維的課程架構中,但筆者做出了相應的修改,李藝教授原架構圖是三層柱狀圖,筆者將其修改為三層錐狀圖,旨在突出下層結構的基礎性以及上層架構的升華性,更能凸顯計算思維習得的指向。如下圖所示:

圖3 基于計算思維的課程架構
筆者在上面生成的基于計算思維的課程架構的基礎上,設計了教學設計模型,如下圖4所示。

圖4 基于培養學生計算思維的高中信息技術課堂教學設計模型
雙基層的教學活動以教師的講授和學生的體驗為主,教學內容主要是App Inventor中組件及其屬性的應用和內置塊的調用,設計意圖是通過老師的介紹讓學生對App Inventor的操作盡快地熟悉起來,掌握組件的設計,是整個學習的最基礎階段。
問題解決層中教學活動的設計主要是基于協作與探究的任務式學習,教學內容涉及順序結構、選擇結構、循環結構、變量、列表、過程這些知識點,設計意圖是讓學生在每節課的任務中掌握App Inventor程序設計的核心編程思想,在學生解決問題的過程中逐漸培養學生在建模、分解、抽象等方面的計算思維,是整個學習的重要階段。
計算思維層的教學活動設計主要是基于探究與創新學習,學生的學習活動依托項目展開,設計目的是強化學生編程中分解、抽象、概括以及評價等方面的計算思維,最終目的是學生能夠利用已有知識解決新的問題。值得一提的是在本模型中,計算思維并不是在頂層“計算思維層”中習得的,計算思維的培養與習得在第二層中早有體現,在頂層中得到了升華與遷移。在頂層所體現的內容應當是計算思維的最高級目標——利用計算機解決問題的過程與方法,遷移到與之相關的其他問題解決中。項目學習會給學生提供一個探究與創新的舞臺,在完成項目的過程中學生的計算思維應該能夠得到不同程度的提高。
教學設計的注意事項:
1.雙基層強調體驗,教師講授是盡量選擇組件設計豐富,編程易于實現的案例。一方面讓學生快速熟悉組件及其屬性設置,另一方面激發學生的學習興趣,樹立學生的編程信心,這點對筆者所在這類學校還是很有必要的。
2.問題解決層強調引導,每節課選取的學習任務要有針對性,教師對程序的算法教學可以借助流程圖展開,但不能讓學生依賴流程圖編程。教學的推行要從教師創建流程圖逐步過渡到學生創建流程圖,教學設計需要將計算思維的抽象、分解、迭代、遞歸、邏輯等內容以難度漸進的梯度分散到每節課的教學內容中。教師的課堂評價和反饋必不可少,教師適當的干預和啟發對于學生計算思維的習得至關重要。
3.項目的選題需要由教師把關,項目學習前期設計與規劃對于項目能否有效開展起決定性作用,這個環節少不了教師的監督與指導,項目進行過程中教師還可以轉變成參與觀察者,對單獨學生計算思維的習得情況進行質性評價,在評價過程中教師亦能反思問題解決層教學中的得與失。
筆者任教于珠海郊區的一所農村高中,過半生源都來自于農村家庭,學生中考排位區段在珠海市的七千名之后,不論是學習成績還是學習習慣都差強人意。因此,即使新教材已然落地,但也不是完全適用于我校學生,筆者和科組同仁必須以學生為主體,探究更加適合我校學生的課程及其教學設計。
在開學伊始,筆者設計了一份針對高一新生的問卷調查,見附錄1。問卷調查的結果顯示,92.5%的學生對計算思維一無所知,79.8%的學生不能夠用計算思維解決數學問題,“和同學一起合作”是學生最喜歡的信息技術學科學習方式,占總比例50.3%,其次是“老師邊講,我們邊做”,學習信息技術最大的困難是“沒有興趣,不喜歡學”,占總比例的41.7%,其次是“沒有養成良好的學習習慣”。
綜上所述,學生對計算思維的認識基本空白,運用計算思維解決問題的能力有待培養,對信息技術課程的學習很大程度上依賴興趣,這對教師的教學設計提出了極高的要求。
本研究在珠海市斗門區和風中學2018級高一新生中筆者任教的8個班級中展開。學生通過15個課時,完成App Inventor課程的學習。在學生自我評價表中,我們發現在完成本課程的學習之后,學生對程序語言設計中有很好的認知,在項目實施過程中能夠對任務進行分解,采用計算思維形成解決問題的方案,與此同時,學生在團隊合作、批判性思考等方面也大有進步。
課下筆者選擇了幾位學生進行訪談,主要涉及在項目中表現非常積極的學生,在項目學習中表現不積極的學生和愛提問的學生這三類。筆者設計的訪談問題關注學生學習的主觀體驗和感受,了解學生的學習困難以及對課程的看法。訪談中無論基礎好壞的學生都表示自己在編程方面收獲很大,也能認識到計算思維在編程中的重要作用,并且能夠運用計算思維解決課堂問題,學生對課程和教師整體都持肯定態度。
由于目前我國高中信息技術學科領域沒有權威的關于學生計算思維的評價量表,所以本研究主要采用質的研究方法,并沒有量化的數據進行教學前后以及實驗組、對照組的數據對比,筆者也期望今后能夠完善這部分研究。
綜上所述,筆者提出的基于培養學生計算思維的高中信息技術課堂教學設計模型在高中信息技術課堂教學中具有很強的操作性,通過本模型的實施,確實能夠有效地提高學生的計算思維,讓學生學會運用編程的思維去解決問題。同時,筆者認為本模型具有很強的遷移性,它不僅適用于App Inventor的課堂教學,也同樣適用于其他的編程工具的教學,可以給一線教師提供參考和借鑒。