任赟
【摘 要】目前,育人方式變革正從知識本位走向素養(yǎng)本位,從“為了知識的教育”走向“通過知識的教育”。本文通過兩個教學(xué)案例幫助學(xué)生體驗敏捷開發(fā)思想,進(jìn)而培養(yǎng)學(xué)生的計算思維。
【關(guān)鍵詞】敏捷開發(fā);計算思維;信息技術(shù)
2017版高中信息技術(shù)新課標(biāo)提出了計算思維這一核心素養(yǎng)。計算思維是指個體運(yùn)用計算機(jī)科學(xué)領(lǐng)域的思想方法,在形成問題解決方案的過程中產(chǎn)生的一系列思維活動[1]。敏捷開發(fā)以用戶的需求進(jìn)化為核心,采用迭代、循序漸進(jìn)的方法進(jìn)行軟件開發(fā),是軟件公司常用的一種開發(fā)方法。
在高中信息技術(shù)教學(xué)中,筆者注重理論聯(lián)系實(shí)際,把學(xué)科知識置于學(xué)科真實(shí)的情境中,從而讓知識活起來,培養(yǎng)學(xué)生的計算思維。因此本文設(shè)計了兩個適用于敏捷開發(fā)思想的項目:密碼登錄系統(tǒng)、隨機(jī)點(diǎn)名器。
項目一:密碼登錄系統(tǒng)
1.項目學(xué)習(xí)目標(biāo)
(1)掌握if條件語句的格式及使用方法(計算思維)。
(2)掌握while循環(huán)語句的格式及使用方法(計算思維)。
(3)掌握for循環(huán)語句、break語句的格式及使用方法(計算思維)。
(4)掌握字典的創(chuàng)建、訪問、in運(yùn)算符等相關(guān)知識(計算思維)。
(5)學(xué)生能夠根據(jù)實(shí)際問題,采用計算機(jī)可以處理的方式界定問題、抽象特征、描述算法,綜合運(yùn)用Python中的基礎(chǔ)知識(信息意識、計算思維)。
2.項目描述
在平時的工作、生活中,需要經(jīng)常登錄一些系統(tǒng),該項目讓學(xué)生利用學(xué)過的Python相關(guān)知識完成一個密碼登錄系統(tǒng)開發(fā)。
3.項目內(nèi)容
該項目為一個持續(xù)Python知識教學(xué)過程中的項目,幫助學(xué)生體驗敏捷開發(fā)中軟件迭代更新的過程。
以下為軟件的四次迭代更新過程涉及的知識,為Python中的if條件語句、while循環(huán)語句、for循環(huán)語句以及字典等。
請編寫一個用戶登錄系統(tǒng),用戶輸入用戶名、密碼后,若用戶名不存在提示“用戶名不存在”,若用戶名存在但密碼錯誤提示“密碼錯誤”,若同時正確提示“登錄成功”。
使用場景:此版本可使用多分支條件語句來完成,但是程序較冗長。借由字典這個數(shù)據(jù)結(jié)構(gòu)可簡化代碼及邏輯,因此可以作為Python中數(shù)據(jù)結(jié)構(gòu)——字典的引入案例,借此講解字典的基本操作方法。
4.項目反思
以上四個版本均處理用戶密碼登錄問題,只是隨著學(xué)生所學(xué)知識的增加,功能更加完善,更符合現(xiàn)實(shí)生活中的需求,借此帶領(lǐng)學(xué)生體驗敏捷開發(fā)的思想方法,進(jìn)而培養(yǎng)學(xué)生的計算思維。
此外,本項目為一個連貫項目,還可以作為相關(guān)知識情境引入案例,幫助學(xué)生更深刻地理解相關(guān)知識。
如版本1、版本2分別用到if條件語句、while循環(huán)語句(表3),而兩條語句在格式上非常類似,借由本項目版本1、版本2可幫助學(xué)生深刻理解兩條語句的異同。
項目二:隨機(jī)點(diǎn)名器
1.項目學(xué)習(xí)目標(biāo)
(1)掌握random模塊中randint的使用方法,能夠根據(jù)需求確定randint的兩個參數(shù)(計算思維)。
(2)掌握列表的創(chuàng)建、訪問、刪除、獲取長度等方法(計算思維)。
(3)能夠根據(jù)需要綜合應(yīng)用if條件語句、while循環(huán)語句、break語句等(計算思維)。
(4)掌握使用Python讀取文件的方法(計算思維)。
(5)掌握字符串split函數(shù)的使用方法(計算思維)。
(6)學(xué)生能夠根據(jù)實(shí)際問題,采用計算機(jī)可以處理的方式界定問題、抽象特征、描述算法,綜合運(yùn)用Python中的基礎(chǔ)知識(信息意識、計算思維)。
2.項目描述
在平時課堂中教師經(jīng)常需要叫學(xué)生回答問題,該項目讓學(xué)生利用Python相關(guān)知識制作一個隨機(jī)點(diǎn)名器幫助教師點(diǎn)名。
3.項目內(nèi)容
敏捷開發(fā)思想有一個重要的內(nèi)容是“快速響應(yīng)用戶需求”,先完成核心部分,再逐步完善。該項目可以很好地幫助學(xué)生體驗這一過程。
要求:為了方便所有人都可以使用該隨機(jī)點(diǎn)名程序,名字可以使用文件讀入的方式,當(dāng)點(diǎn)名的名字發(fā)生改變時,只需要改變文件中的名字即可。
知識鏈接:使用open函數(shù)打開一個文件,使用read方法讀取文件內(nèi)容,使用split方法將讀取的內(nèi)容按照換行分隔返回一個姓名列表。
4.項目反思
以上六個版本逐步完善,從最基礎(chǔ)的只可以點(diǎn)學(xué)號,到實(shí)現(xiàn)文件讀取點(diǎn)名,功能逐步增加,不僅讓學(xué)生體驗敏捷開發(fā)的過程,還方便學(xué)生理解并獨(dú)立完成程序,進(jìn)而在這個過程中培養(yǎng)學(xué)生的計算思維。