李才華

【摘 要】項目式教學是基于真實學習情境,以問題為導向的教學模式,學生能在項目的完成中強化知識的學習及提升解決問題的能力。Python編程教學是高中信息技術教材中的重要模塊,本文以“讓數據‘隱身”為例,開展了項目式教學在高中Python編程教學中的實踐研究,探討項目式教學在高中信息技術學科的實施。
【關鍵詞】項目式教學;Python編程;教學實踐
【中圖分類號】G434? ?【文獻標識碼】B
【論文編號】1671-7384(2023)08-074-02
案例背景
《普通高中信息技術課程標準(2017年版)》將Python編程語言作為唯一的程序設計語言開展教學,足以體現Python編程教學的重要性。項目式教學是基于真實學習情境,以問題為導向,學生通過合作學習,在完成項目的過程中獲得知識、技能和提升利用所學知識解決實際問題能力的教學模式。現在的高中生Python編程語言的學習基礎普遍比較薄弱。因此,為了強化Python編程教學,促進學生對Python程序設計語言的掌握,本文研究將項目式教學運用于Python編程教學的實踐中,在Python編程教學中培養學生的計算思維能力和運用知識解決實際問題的能力。
案例描述
1.教學分析
(1)導入教學主題
首先讓學生觀看關于數據加密的視頻,教師引導學生在觀看視頻的同時思考回答以下問題:你知道視頻中的聲音和手電筒燈光傳遞的是什么信息嗎?視頻中的數據是如何“隱身”的?什么是摩斯密碼?
視頻的內容主要包含三方面:第一是SOS信號的聲音和燈光傳遞,可以讓學生直觀感受信息的加密傳遞;第二是影視劇中經典的通過摩斯密碼傳遞信息的片段,這能夠活躍課堂氣氛,集中學生注意力,同時讓學生知道數據可以經過秘鑰進行加密和隱身;第三是關于摩斯密碼簡介的內容,讓學生了解數據加密技術。通過這個視頻的導入,引導學生確立本節課的項目主題——“讓數據‘隱身”。
(2)確定教學目標
在確立項目主題之后,教師引導學生確立本節課的教學目標如下:在通過網絡搜索相關信息的自主學習過程中,了解數據加密的發展歷史,體會密碼保護的重要性,增強信息安全意識;會用Python編程實現凱撒密碼的加密算法;在問題的求解過程中建立運用計算機科學領域的思想方法解決問題的思維習慣;在揭秘凱撒密碼的過程中,理解數據加密和解密的概念及原理。
將本節課的教學目標及核心素養培養目標分解到各項活動中,明確項目的目標和期望實現價值。明確的項目目標可以引導學生學習的方向,也為項目評價提供依據。
2.教學設計
本案例中將教學項目——“讓數據‘隱身”分解為以下三個任務。任務一:了解古老的“隱身術”;任務二:用Python編程實現凱撒加密算法;任務三:理解數據加密和解密的概念及原理。
通過任務一的完成,學生能了解到數據加密的發展歷史和各個時期的讓數據“隱身”技術,能夠直觀地體會到數據加密的重要性以及秘鑰保護的重要性,增強學生信息意識;通過任務二實現凱撒加密算法,是這個項目的核心任務,根據計算機解決問題的一般過程來學習凱撒加密的程序;通過任務三總結與升華所學知識。
3.教學實施
(1)任務一:了解古老的“隱身術”
教師提出問題:自古以來,在管理國家、戰爭或經濟往來中,有些情況下需要高效安全的通信方式。我們比較熟知的是近代發明的摩斯密碼。但是,在古代是如何給數據穿上“隱身符”的呢?讓學生利用網絡搜索相關信息,了解數據加密的發展歷史。本任務的完成采用小組活動的形式開展,培養學生的團隊合作意識;利用網絡獲取學習資源,強化學生的搜索引擎操作技能與知識分享的習慣和能力。
(2)任務二:用Python編程實現凱撒加密算法
第一步,分析“愷撒密碼”的加密原理。用Python編程實現凱撒加密算法程序,需解決以下問題:一是圖形用戶界面的建立,相關組件的添加;二是自定義Button按鈕激發函數Caisajiami,實現加密算法;第三:在Caisajiami函數中實現循環加密過程。通過分析凱撒加密程序,建立該程序的結構模型。
第二步,設計算法。對程序中的數據進行分析和組織,明確明文數據與密文數據的關系,確定數據類型為字符串(圖1);形成使用Python編程解決問題的方案及步驟,并能夠用流程圖描述出來。
第三步,編寫代碼。利用Python語言編寫代碼實現程序,強化學生Python語言編寫程序和算法實現的能力。
第四步,調試運行。教師提出:若要爭取時間和空間最優,凱撒密碼的解密程序是怎樣的,在加密程序上作何更改?這強化了學生知識遷移及利用所學知識解決實際問題的能力。
(3)任務三:理解數據加密和解密的概念及原理
通過體驗揭秘凱撒密碼的Python編程實現過程,說出數據加密和解密的概念及原理,完成表格內容填空。學生小組合作自主完成任務,在前面已學Python編程實現凱撒加密與解密算法的基礎上,總結數據加密與解密的概念與原理,根據具體事例進行知識總結與升華。
(4)拓展。教師提出問題:愷撒密碼安全性能如何?如何改進才能提升安全性能?
這使學生在學習完數據加密與解密技術之后,能夠對數據加密與解密技術進行安全性的判斷,強化信息安全意識。
4.教學總結
(1)讓學生用思維導圖總結與梳理本項目的所有內容;(2)各學生小組評價與梳理本小組的項目完成情況;(3)每位學生完成問卷,對本項目進行個人評價;(4)最后教師根據收集的相關數據與資料進行總結評價。
教學反思
關于教學的整體過程。本案例項目式教學,從項目分析、項目設計、項目實現,再到項目總結,環環相扣。項目實現的核心任務是用Python編程實現凱撒密碼的加密程序,按照計算思維解決問題的一般步驟進行。首先,對求解問題進行分析,界定問題,完成結構模型的架構;其次,對程序中的數據進行分析和組織,確定具體的數據類型和結構,設計解決問題的算法,并用流程圖描述出來;再次,利用Python語言編寫代碼實現程序,與算法的分析模塊相對應;最后,對編寫好的程序進行調試,爭取時間和空間最優,并提出加密程序作何更改實現凱撒密碼的解密程序,強化學生的知識遷移及解決實際問題的能力。項目實現的路徑符合學生知識的建構邏輯,也與Python編程實現程序的思路高度契合。
關于課堂教學組織形式。教師采用小組合作學習的方式,根據項目分解的任務確定小組活動的內容與形式,小組以完成項目目標為導向;在組內開展分工合作學習,以小組評價表中團體成績為小組完成項目的評價依據,激發小組合作學習的能動性。
關于課堂評價。課堂評價是促進課堂效率提高的主要手段之一,本節課主要采用了過程性評價及總結性評價。通過項目式教學開展Python編程教學,在項目的實現過程中,學生能夠自主分析項目目標和項目內容,能夠用編程思維來設計算法與完成項目。
在Python編程教學中采用項目式教學,能夠激發學生的學習興趣,使學生通過自己的能力嘗試解決問題,在解決問題的過程中提升信息素養。
編? ?輯:馮安華