徐強


作為高中信息技術課程最具學科意義、最受關注的核心素養,“計算思維”通過算法與程序部分內容得到了明顯的落實。同時,對于新教材中關于“算法與程序實現”部分的內容,由于更換了編程語言,一線教師普遍存在畏難情緒。為了盡可能理解相關課程內容,從而優化教學過程,提升教學效率,培養學生的學科核心素養,落實、達成課程標準要求,筆者嘗試以算法與程序實現部分內容為例來闡述對新教材的認識及優化教學的策略。
● 從課程開發角度認識新教材
從課程研究歷史來看,課程開發大致經歷了科學化課程開發、學科結構運動與學術中心課程、實踐性課程開發等不同階段,研究內涵包括了課程基本理論、課程內容選擇、課程內容組織方法等諸多方面。尤其是對于課程的價值取向來說,研究已由專注于技術理性的課程對學習者的“控制”發展到實踐理性的課程關注教師、學生、教材、環境四個要素的綜合協調。
根據對課程開發模式的界定,目前主流的課程開發模式為目標模式和過程模式。二者相比較,前者基本將學習者以及實施者排除在外,課程是一種上層、權威意志的體現,更強調自身內容的結構化、學術的邏輯性,其特征是“靜態”的;后者則強調知識中的不確定性,鼓勵個體化的、富于創造性的學習,將課程開發建立在實際的教育情境基礎上,其課程在一定程度上體現了“動態”的特征。
具體到普通高中信息技術“算法與程序實現”的課程內容,以具體某一章節(單元)為對象,根據海南省目前使用的教材情況,將2004年由全國中小學教材審定委員會審定的教育科學出版社《算法與程序設計》教材(以下簡稱“舊教科版”)與2019年由國家教材委員會專家委員會審核的教育科學出版社《數據與計算》教材(以下簡稱“新教科版”)、人民教育出版社、中國地圖出版社《數據與計算》教材(以下簡稱“人教-中圖版”)做一個簡單的對比,可以看到課程開發理念的變化(如下頁表1)。
從表1可以看出,新舊教材在編排結構上存在明顯的區別。這些區別主要體現在以下幾個方面:
第一,新版教材內容編排結構更加細致,層次豐富。舊教科版只提供了“學習目標”“學習內容正文”“實踐”三個板塊;新教科版則提供了七個板塊,人教-中圖版更是提供了十個板塊。更加細致的教材結構設計,有利于教師在實施教學的時候更好地理解教材編寫者的意圖。
第二,新版教材重視教學活動設計,通過學習任務、項目等框架的搭建,提供了較為完整的教學活動設計思路。新課程標準提出的教學建議明確將項目式學習作為信息技術學科教學的主要方式。
第三,新版教材更加注重學生的學習經驗在課程開發和實施中的作用。與之前基于學科學術中心的理念開發的教材相比,新版教材尋找、設計了大量的學習任務實例。
第四,新教材將學生的學習視為課程自身的內在部分。基于過程模式的課程開發思路,課程本身并非一個完全預設的靜態的文本,而是一定程度上在實施過程中持續不斷與教師、學生、環境進行互動、交換信息,是動態的、可自我完善的。新版教材中有大量的關于學習任務分析、學習活動設計、信息收集與整理、學習活動評價、學習效果評價等環節,需要學生基于各自學習實際情況進行設計、補充。
這樣的設計,凸顯了學習者在課程開發與實施中的主體地位,呼應了課程研究的大趨勢。
● 從學習理論角度認識新教材
除了從算法與程序教學傳統、課程開發等角度分析新教材的內容選擇、編排思路之外,我們還可以嘗試從學習理論的角度來認識新課程標準背景下的新教材內容體例。
(1)早期的行為主義學習理論強調操作性條件反射模型的作用,將學習完全等同于刺激——反應的結果,很少考慮學習者的內在心理反應過程。體現在高中階段的算法與編程教學中,就是通過頻繁的、高強度的代碼編寫、調試訓練,讓學生對相關內容由陌生變得熟練。
(2)在認知主義學習理論中,以布魯納為例,他強調發現學習的模式,指出教師不是將現成的結論性知識講授給學生,而是由學生自主地探究現象獲得知識,注重學習過程而不是學習結果等。在教學實踐中,很多教師都熟悉這樣的教學模式,算法與程序教學也開始注重問題解決,注重由學生根據特定問題來分析背后的學科實質性內容,能夠通過問題設計來激發學生的學習好奇心等。
(3)建構主義學習理論強調應該讓學生在與現實情境相類似的情境中進行學習,學生都是以自己的經驗和知識背景來理解具體事物,而且只能理解其中的某些方面,不存在唯一的正確的理解。隨著2004年高中新課程的實施,廣大教師已經非常注重在算法與程序教學中設計教學情境,同時也非常注重用現場實地的演示活動(包括真人表演、計算機模擬)來解釋、演示算法的原理等。
(4)新近發展起來的人本主義學習理論倡導教學要更注重情感發展,強調學生的自由創造,建立良好的師生關系、同學關系,強調自我發展觀念,強調交往。從這些基本原則出發,基于人本主義學習理論的教學實踐主要提倡以問題為中心的課堂討論模式和學生自由學習模式。在教學實踐中,項目式學習體現出人本主義學習理論的特點及其所強調的觀點。一方面,學生可以在其中充分發揮自主性,與教師、同學進行高質量的互動等;另一方面,可以讓學生體驗學科知識學習之外的人際交往、項目過程管理等。
● 從實踐層面優化教學提升效率
基于以上關于新教材的認識與分析,筆者認為,可以從以下幾個方面來優化實踐,提升“算法與程序實現”的教學效率。
1.正確認識程序語言的更換
從教育背景方面而言,絕大多數高中信息技術教師都能掌握VisualBasic或C++等傳統編程語言,也包括最近幾年隨著創客教育而興起的其他圖形化編程語言。但是基于《普通高中信息技術課程標準(2017年版)》(以下簡稱“新課程”)而開發的幾套高中新教材都不約而同地選擇Python作為算法實現的工具語言,給教師們帶來了一些專業技能的障礙,進而影響了他們對新教材的接受程度。這需要一線教師通過學習,提升對新語言的認知程度。例如,從學生學習的角度出發,Python具有很多傳統編程語言沒有的優勢,其簡潔性、語法結構的多樣性和靈活性,會降低學生的學習難度。以實現簡單地輸出100個星號(“*”)為例,從表2的簡單對比可以看出兩者的區別。
從這個對比可以看出,兩者都除去變量定義語句,VB需要三行代碼,而Python只需要一行。相較于VB,Python在簡潔性、易用性、符合人類習慣性等方面具有明顯優勢。
2.加強學習新的編程語言
信息技術教師接觸新生事物的機會遠遠多于其他學科教師,這也是信息技術學科教師的一大優勢。各級教研、培訓部門應適時組織不同層級的專題培訓,將Python語言的編程技能納入其中,消除教師對語言的認識障礙。廣大教師也應該積極主動地開展互學、自學,充分利用慕課、專業書籍等資源,盡可能快速提升自身的專業知識體系。
3.正確認識和實施項目式學習
作為一門新興的學科,信息技術學科由于受缺乏考試評價等因素的影響,其學科內對最新的學習理論、實踐模式的學習和探索,一直都走在各個學科的前面。在新課程標準背景下,正確認識和實施項目式教學成為算法與程序實現內容教學的重要環節。筆者認為應強化對項目式學習的理論認知,弄懂弄通其關鍵因素,要組織項目式學習的實驗研究,尋找落地的實施途徑。
總而言之,由新課程帶來的學習方式的變革、新教材帶來的編程語言的更換,雖然在短時期內給一線教師帶了專業知識和教學實踐的困難,但其背后代表著最新的信息技術學科發展成果和學習理論的研究成果,能夠為學生的終身發展提供更好的保障。信息技術教育工作者要迎難而上,通過加強自身學習等多種方式,實施好新課程中的“算法與程序實現”的教學。