周燕 孫波



摘要:本文強調了計算思維在中小學生數字素養與技能中的重要性,提出要突破學段限制,將計算思維培養納入整個基礎教育視野,重視培養目標的學段連續性和進階發展。文章還以密碼驗證問題為例,遵循“解決簡單問題—典型問題—普遍問題”這一線索,合理設計和實施了相關內容的教學。
關鍵詞:密碼驗證問題;信息科技;核心素養;計算思維;學段銜接
中圖分類號:G434? 文獻標識碼:A? 論文編號:1674-2117(2024)10-0015-04
計算思維是信息科技(技術)核心素養的重要體現,是中小學生數字素養與技能的顯著表征。學生能最終形成以計算思維來理解和解決問題的素養,需要教師在小學、初中、高中三個學段進行連續和貫通的培養,即突破學段限制,將計算思維培養放在整個基礎教育視野中,深入理解計算思維在不同學段培養目標的區別與聯系,從而合理設計和實施相關內容的教學。
算法學習是發展計算思維的重要途徑,本文嘗試以編程解決密碼驗證問題為例,對標計算思維在不同學段的發展目標,探究核心素養目標導向的信息科技(技術)課程教學。
計算思維的內涵與階段培養目標
1.課標分析
《義務教育信息科技課程標準(2022年版)》(以下簡稱“義教新課標”)與《普通高中信息技術課程標準(2017年版2020年修訂)》(以下簡稱“高中新課標”),對計算思維的內涵分別闡述如下:
義教新課標:計算思維是指個體運用計算機科學領域的思想方法,在問題解決過程中涉及的抽象、分解、建模、算法設計等思維活動。具備計算思維的學生,能對問題進行抽象、分解、建模,并通過設計算法形成解決方案;能嘗試模擬、仿真、驗證解決問題的過程,反思、優化解決問題的方案,并將其遷移運用于解決其他問題。
高中新課標:計算思維是指個體運用計算機科學領域的思想方法,在形成問題解決方案的過程中產生的一系列思維活動。具備計算思維的學生,在信息活動中能夠采用計算機可以處理的方式界定問題、抽象特征、建立結構模型、合理組織數據;通過判斷、分析與綜合各種信息資源,運用合理的算法形成解決問題的方案;總結利用計算機解決問題的過程與方法,并遷移到與之相關的其他問題解決中。
可以看出,在義務教育和高中學段,學生均需經歷計算思維的全過程,具體表現如下頁圖1所示。
分析計算思維解決問題的過程,需要教師把握不同學段的培養目標,掌握不同學段相關教學內容的“難度”設計,這樣才能讓學生的思維形成階梯式提升,既不盲目拔高,又不會無效重復。因此,首先要明晰計算思維在小學、初中、高中三個學段的階段培養目標(如下表)。
2.學段培養目標梳理
分析表1,可以梳理出以下計算思維學段培養目標的發展路徑(如圖2)。
根據學生認知發展規律,以問題復雜度來對比計算思維在小初高三個學段的培養目標,可用簡單問題、典型問題、普遍問題(或真實問題)做階段劃分,學生經歷了從整體認知到典例分析,再到底層實現的過程,即在問題復雜度依次升級迭代的過程中,完成計算思維進階發展。
密碼驗證問題的學段解決方案示例
密碼驗證問題是義教和高中課堂教學中常見的案例,教學對象不同,問題的規模和原理呈現程度也不同,因此,應根據計算思維培養目標,設計合理的教學目標。
1.小學:會將復雜問題“分解”或“簡化”為簡單問題
小學階段從列舉生活中的密碼驗證問題入手,分析密碼驗證的過程,利用圖形化編程工具解決簡單問題,可設計如下教學目標:
①能將密碼驗證問題分解為輸入—判斷—輸出三個步驟。
②明確各步驟中的數據關系,將生活問題抽象為數理邏輯問題。
③能用自然語言或流程圖描述解決方案。
④編程實現算法,并嘗試優化問題解決方案。
下頁圖3給出了初級算法和進階算法的參考代碼。
小學階段注重生活體驗,初步學習從真實問題中抽象特征,將復雜問題“分解”或“簡化”為簡單問題并編程解決。可視化的積木塊封裝了絕大部分的技術實現細節,復雜問題以步驟或模塊的形式呈現出來,學生能將精力集中于算法關鍵環節的設計,對問題解決方案形成初步認知。
因為已經有了利用圖形化編程工具解決簡單密碼驗證問題的學習經歷,學生應能遷移解決紅綠燈、迷宮游戲、成語大賽、計算比賽、小型開關系統設計等類似問題。
2.初中:能設計和實現較完善的算法,解決典型問題
初中階段解決密碼驗證問題,應分析生活中的真實情境,確定典型需求,在“輸入—判斷—輸出”三個步驟的基礎上,將問題進一步分解,實現設定密碼強度、限制驗證次數、實現多重密碼等功能。此外,還要實現從圖形化編程到Python代碼編程的過渡。可以設計如下教學目標:
①能細化密碼驗證問題的各個環節,明確典型問題。
②抽象建模,設計算法并編程實現。
③能追蹤數據在算法中的變化,根據實際問題優化算法。
④遷移解決同類典型問題。
圖4給出了參考流程圖及部分代碼示例。
初中階段學生逐步建立理性思維,能對步驟和環節進行細化,并能理解更復雜的數據關系。Python語言的代碼編程方式有助于學生進一步理解計算機解決問題的過程,其豐富的模塊庫又適當降低了編程難度,幫助學生實現較完善的算法,解決典型問題。
因為有過利用Python編程解決密碼驗證問題的學習經歷,學生應能遷移解決身份證號識別、賬號密碼匹配、石頭剪刀布游戲、垃圾分類、智能家居模擬等類似問題。
3.高中:逐步求精,能以形式化方式描述和解決普遍問題
高中階段解決密碼驗證問題,應在“輸入—判斷—輸出”三個步驟的基礎上,熟練分解問題并細化求精,抽象特征,以形式化的方式描述問題,總結字符密碼、圖像密碼、人臉識別、指紋聲音識別等生物密碼的解決規律,初步以模塊化思想設計算法。可以設計如下教學目標:
①能分析生活中真實的密碼驗證問題,明確各環節問題特征,抽象建模,以形式化方式設計并描述算法。
②能對算法各環節進一步求精,還原真實問題解決過程。
③以數字化手段獲取、分析或組織數據,靈活應用經典算法優化解決方案。
④遷移解決同類較復雜問題。
下頁圖5給出了人臉識別程序的模塊化設計及部分功能流程圖。
高中階段學生知識儲備與生活經驗進一步豐富,有能力對算法進一步求精,最大程度還原真實問題。能綜合義教學段編程解決問題的學習積累,初步形成自頂向下、逐步求精的模塊化程序設計思路。針對復雜問題,應能以形式化的方式描述算法,借助Python庫函數或功能模塊等“部分封裝”方式實現算法,并能調整和設置關鍵數據,完善“半成品”程序。
計算思維培養目標的學段銜接理解
計算思維是學生理解信息社會的必備素養,學生從小學到高中,逐步經歷解決簡單問題、典型問題、普遍問題的學習過程。從技術角度看,這是抽絲剝繭、認識和掌握工作原理的過程;從思維方式看,是逐漸建立整體和系統的觀點,以結構化和形式化思路理解信息社會的過程。
1.教學案例的“難度”應體現學段特點
計算思維培養相關教學案例的選取應體現小學到高中的進階和高中向小學的兼容。即便解決同一問題(如密碼驗證問題),高中信息技術教學在問題規模、技術復雜度、算法完善性等方面都應考慮學生在義教學段的已有基礎,選好“普遍問題”這一教學起點,體現學段特點,避免將高中信息課上成初中甚至是小學信息科技課;同理,義教信息科技的教學也不能盲目拔高,要考慮學生的知識儲備,適當展示過程和細節,以簡單問題或典型問題來模擬真實問題。
2.算法實現的“精度”應實現趨向底層
義教“信息科技”將算法作為六條邏輯主線之一,并給出了如下發展脈絡:問題的步驟分解—算法描述、執行與效率—解決問題的策略或方法。在高中階段,則應在算法實現的技術“精度”上實現躍升,即要關注更底層技術的實現,如簡單密碼驗證問題,小學僅需判斷用戶的鍵盤輸入與“123Abc”是否相等,初中要關注程序如何讀取鍵盤輸入,高中則要關注如何實現兩個字符串的逐字比較——隨著學段的升高,技術實現的“精度”也更趨精細化,更接近底層。
在中小學階段,學生計算思維的培養是其數字素養與技能提升的重要決定因素,并能為其更好地理解和建設信息社會打下基礎。同時,計算思維的培養也是實現科技自主可控和原始創新的重要保證。信息科技教學充分體現學段銜接,有利于學生計算思維的發展和提升。高中新課標描繪了基礎教育階段學生計算思維的發展目標和質量標準,而義教新課標的頒布實現了課程的連續性,并對目標和標準進行了階段劃分,建立了從義教到高中的計算思維培養框架,為計算思維核心素養培養提供了有力支撐。
參考文獻:
[1]中華人民共和國教育部.義務教育信息科技課程標準(2022年版)[S].北京:北京師范大學出版社,2022.
[2]中華人民共和國教育部.普通高中信息技術課程標準(2017年版2022年修訂)[S]北京:人民教育出版社,2020.
[3]熊璋,方其桂,許憬,等.義務教育過程與控制教學實施眾人談[J].中國信息技術教育,2023(09):5-10.
[4]周曉燕.高中信息技術課程中計算思維多維度進階教學探究[J].中國信息技術教育,2023(10):17-20.