張憧 吉林省長春汽車經濟技術開發區第六中學
《普通高中信息技術課程標準(2017年版)》強調了學生計算思維培養的重要性,同時,明確提出:“課程倡導基于項目的學習方式,將知識建構、技能培養與思維發展融入到運用數字化工具解決問題和完成任務的過程中。”[1]因此,高中信息技術教學中項目式教學成了教學實踐的熱點。
而Python作為一門解釋型編程語言,簡單易學,有較強的兼容性和實用性,且對學生思維和能力的培養作用較為顯著,具備較強的教學價值。高中Python項目式教學能讓學生在充分參與Python編程實踐的過程中發現問題、分析問題、解決問題、評價問題,最大限度地激發學生的學習熱情,引導并提升學生對Python編程知識的探究能力。因此,筆者基于ARCS動機理論設計了高中Python項目式教學流程并進行了教學實踐。
很多信息技術教師在設置項目主題時照搬教材中提供的案例,沒有根據教學內容進行靈活處理和改造。例如,有些高中信息技術教材提供的案例多是通過為一些典型的數學問題進行編程,來對語法和算法進行講解,與學生實際生活脫節較為嚴重,學生并不能夠認識到Python編程學習的潛在價值與意義。
項目式教學是由學生經歷完整的問題解決過程,讓學生在使用Python編程知識解決真實世界問題的過程中獲得滿足感和成就感。但很多Python項目式教學沒有留給學生自主探究空間,教師掌控項目學習全過程,學生在教師安排下看似完成了項目,卻失去了學習的自主權。
很多Python項目式教學將“作品”簡化為“作業”。在教學中,教師只關注學生作業的提交而不是作品的呈現,學生主體地位被忽視,同時對知識和技能的掌握也停留于表層,沒有對學生的學習和發展起到作用。
ARCS學習動機理論是由美國佛羅里達州立大學教授凱勒(John M. Keller)于1984年提出的,所謂ARCS,即引起注意(Attention)、切身相關(Re leva nc e)、建立信心(Con fidence)、獲得滿足(Satisfaction)四個英文單詞首字母的縮寫,如圖1所示。[2]凱勒認為,ARCS學習動機理論模型能夠兼顧學生內在因素(如個人期望、能力與認知價值等),及外在教學環境因素(如教學設計與管理等)。教師的教學設計與管理會影響學生努力的程度;教師的教學設計如果能夠激發與維持學生的需求和期望,那么學生的努力程度就會提升,并影響學生的行為表現,而學生的學習行為又會反過來影響學生的學習動機。

圖1 ARCS學習動機理論
傳統的高中Python編程項目式教學對學生的學習動機關注較少,而若無法引起學習興趣或動機,則學習效果就會大大降低。因此,筆者設計了基于ARCS動機理論的Python項目式教學流程,如圖2所示。

圖2 高中Python編程項目式教學流程
基于ARCS動機理論的高中Python項目式教學流程,筆者選擇粵教版高中信息技術必修一《數據與計算》中的“4.3.2 if...elif...else語句的應用”為案例進行項目式教學實踐。
在學習“4.3.2 if...elif...else語句的應用”一課前,學生已經掌握了if條件單分支和if...else條件雙分支結構,本項目中學生將繼續深化學習 if...elif...else條件多分支結構。在教學實踐中,學生將通過編寫程序來應對各種情況,提升問題解決的技能,并在以后的編程實踐中靈活應用所學知識。通過多分支結構和嵌套使用的學習,學生將逐漸形成設計和實現復雜程序邏輯的能力。
當學生使用Python編程來解決生活中的真實問題時,他們對Python的學習興趣和學習動機會更強,對算法的理解也會更加深入,這符合ARCS學習動機理論的“切身相關”原則。
在本案例中,教材給出的問題情境是“到某購物網站購買三種筆記本作為獎品和紀念品”,這個問題情境沒有與當前高中生日常生活經驗聯系起來,需要教師改造和更換。在項目式教學實踐中,筆者設置了一個來源于生活的真實情境:小明要給他在不同城市的三位朋友各寄一個包裹。他該付多少快遞費?三筆快遞費都一樣嗎?如果不一樣,快遞費的收取和哪些因素有關?寄快遞是高中生日常生活中常進行的行為,因此,圍繞真實生活問題確定項目主題能夠很好地激發學生學習的積極性和主動性,喚起他們學習Python知識的欲望。
在有了學生感興趣的項目主題后,就要把項目主題細化為具體問題。學生通過小組思考、討論,得出了影響快遞費收取的主要因素:一是包裹的重量;二是目的地。教師進一步提問:能否將這兩個影響因素分條件進行討論?學生合作討論得出結果。解決方案①:如果包裹的重量小于等于1kg,不論目的地在哪里,運費都是10元。解決方案②:如果包裹的重量在1kg到5kg之間(不含1kg),根據目的地不同,分為同城和其他城市兩種情況。同城運費為12元,其他城市的運費為每公斤4元。解決方案③:如果包裹的重量超過5kg(不含5kg),同樣根據目的地不同,分為同城和其他城市兩種情況。同城運費為每公斤6元,其他城市的運費為每公斤8元。通過將復雜的核心問題進行分條件討論,不僅能夠深入分析問題,更能夠培養學生的計算思維和問題解決能力。
在項目式教學實施過程中,教師要提供各種各樣的多元項目支架,讓學生完整地經歷問題解決全過程。同時,在繪制流程圖的過程中,教師觀察每個小組合作的情況,對遇到問題的小組給予及時的指導。在學生繪制完成之后,教師選擇兩個小組進行全班展示。
同時,在項目式教學實踐中,教師適當地與學生互動,有助于學生專注于課堂。例如,教師出示典型錯誤范例,讓學生在編寫程序時不出現低級錯誤;學生運行錯誤代碼,并能正確指出問題所在,有助于學生增強自信心。
在學習過程中,每個小組都展示了自己的學習成果。他們分享了小組的問題解決思路、代碼的編寫過程以及運行結果等方面的內容。這種思維方式能夠幫助學生更好地分析和解決問題,并培養他們的計算思維能力。
經過了一段時間的“4.3.2 if...elif...else語句的應用”教學案例實踐,學生學習Python的意愿和參與動機得到極大激發,并且能夠高質量地形成項目成果。
在Python編程項目式教學實踐中,學生帶著濃厚的興趣進入了項目。但隨著項目難度逐漸增加,部分編程能力不佳的學生,就會慢慢喪失學習興趣,逐漸降低學習動機,在遭遇困難后容易自我放棄。因此,在Python編程項目式教學過程中,教師需要適時介入并提供引導,幫助學生能夠始終保持強烈學習動機,進行持續有效的學習。
教師可以選擇學業成績較優秀的學生擔任組長,挑選不同層次學生進行異質分組。同伴互助能夠有效地提升不同層次學生的學習動機,讓他們在異質合作中各自獲得滿足感。
在Python編程學習中,由于所學習的內容具有新穎性和復雜性,并且學生有機會在真實情境中遇到各種意外情況,所以,學生在綜合解決各種復雜問題過程中能保持強烈的學習動機。因此,Python編程項目式教學活動設計要以有趣的編程任務吸引學生投入到學習中,再引導學生在項目中學習編程算法和程序設計知識,加深學生對編程的理解。