金婧
項目設(shè)計依據(jù)
《普通高中信息技術(shù)課程標(biāo)準(zhǔn)(2017年版)》引入“計算思維”,旨在強調(diào)學(xué)科思維的養(yǎng)成,在教學(xué)實施建議中提出把項目整合到課堂教學(xué)中,讓學(xué)生在真實情境中以學(xué)科思維方式思考、用知識和技能分析,在解決問題中完成知識建構(gòu)。
本案例內(nèi)容出自教育科學(xué)出版社出版的《信息技術(shù)必修1:數(shù)據(jù)與計算》第2單元“編程計算”第1節(jié),具有承上啟下的作用。同時,本節(jié)作為本單元的開篇,圍繞“算法”學(xué)科核心概念展開,其中,對問題的抽象或形式化描述是算法的基礎(chǔ)。
針對這一部分內(nèi)容,課程標(biāo)準(zhǔn)中的相關(guān)要求為:“1.6從生活實例出發(fā),概述算法的概念與特性,運用恰當(dāng)?shù)姆椒ê涂刂平Y(jié)構(gòu)表示簡單算法。1.7掌握一種程序設(shè)計語言的基本知識,使用程序設(shè)計語言實現(xiàn)簡單算法。通過解決實問題,體驗程序設(shè)計的基本流程,掌握程序調(diào)試與運行的方法?!?/p>
項目教學(xué)目標(biāo)
高一學(xué)生在生活中會用到“算法”解決問題,但缺乏對計算機解決實際問題的過程的系統(tǒng)化梳理,對軟件工具等工作方法和應(yīng)用流程不了解,他們雖然具備利用計算機解決一些基本問題的工具操作技能,但多為被動的技術(shù)使用者。此外,在認(rèn)識發(fā)展水平上,他們的邏輯思維能力趨于成熟,具有一定演繹歸納能力,自我表現(xiàn)、求知欲較強。
基于課程標(biāo)準(zhǔn)的要求和內(nèi)容、學(xué)情的分析,將本項目的教學(xué)目標(biāo)設(shè)定為:①通過觀察生活實例,能夠主動發(fā)現(xiàn)規(guī)律,抽象特征。②在實現(xiàn)“定時提醒”功能的探究過程中,體會計算機解決問題的過程,理解其基本思想,并了解算法,能使用自然語言描述算法。③借助畫程軟件學(xué)會用流程圖描述算法,知道算法的三種基本結(jié)構(gòu)類型,感受利用數(shù)字化工具的優(yōu)勢。④通過剖析研究“定時”功能,認(rèn)識到算法在學(xué)習(xí)生活中的應(yīng)用價值,體會計算機解決問題的優(yōu)勢。
教學(xué)重點為計算機解決問題的過程、算法的描述,難點為算法的描述、算法的三種基本結(jié)構(gòu)。
項目概述
隨著技術(shù)的發(fā)展,計算機以及由計算機控制的智能系統(tǒng)幾乎滲透到各種領(lǐng)域,給我們的生活帶來了許多便利。但電子產(chǎn)品的長時間、高頻率使用也引發(fā)了眼部不適等健康問題。生活中學(xué)生經(jīng)常接觸到的智能設(shè)備都具有“定時”功能,我們可以將這種自動化的管理思想“移植”到合理管理用眼時間中。
因此,本項目以探究“定時提醒”功能為主題,通過對“定時提醒”功能的分析、設(shè)計與實現(xiàn),體驗計算機解決問題的過程。教材預(yù)設(shè)本節(jié)需兩課時,但從項目學(xué)習(xí)完整性以及實際教學(xué)安排考慮,將其設(shè)計為1課時。
項目教學(xué)準(zhǔn)備
硬件環(huán)境:網(wǎng)絡(luò)機房(配有音箱或耳機);學(xué)習(xí)工具:畫程軟件,Python3.7(安裝time、pygame、pywin32模塊);項目資源:PPT課件、電子活動導(dǎo)案、Python半成品程序、“參考助手”文檔。
項目實施流程(如下頁圖1)
項目教學(xué)過程
1.項目引入
知識技能:分析和獲取有價值的信息,遷移學(xué)習(xí)。
活動形式:學(xué)生討論、代表發(fā)言、教師引導(dǎo)。
問題:計算機技術(shù)在給人們帶來極大便利的同時也帶來副產(chǎn)品,如長時間面對電腦引起眼部不適等健康問題。有什么方法、手段合理管理用眼時間?
聚焦:從生活中智能設(shè)備“定時”功能得到啟發(fā),嘗試通過編程實現(xiàn)“定時提醒”,倡導(dǎo)健康的生活方式。
設(shè)計意圖:“計算機解決問題的過程”,作為抽象而非靜態(tài)的概念,貫穿整個“算法與程序設(shè)計”活動。所以,本課從真實生活中的用眼問題出發(fā),以學(xué)生日常接觸到的智能設(shè)備“定時”功能來引導(dǎo)其思考如何“趨利避害”,由此提出以“定時提醒”功能為研究主題,探討如何編程實現(xiàn)用眼時間的管理。本次課以項目進(jìn)程為明線,設(shè)計相應(yīng)的活動,讓學(xué)生從分析功能到設(shè)計方案再到編程實現(xiàn),經(jīng)歷“計算機解決問題的過程”這條暗線,從而了解算法的描述與基本結(jié)構(gòu)。
2.項目分析
活動1:“定時提醒”的功能分析。
知識技能:問題的界定和描述。
活動要求:①思考:明確項目問題。經(jīng)常使用電腦設(shè)備的人應(yīng)該注意用眼衛(wèi)生,建議工作每隔1小時左右休息10~15分鐘,所以,我們希望能實現(xiàn)定時提醒休息。②討論:找出問題的條件與求解目標(biāo),根據(jù)教師提供的表格填寫“定時提醒”問題分析。
設(shè)計意圖:本環(huán)節(jié)明確項目問題,通過表格幫助學(xué)生以計算機領(lǐng)域的方式分析問題,界定和描述問題,找出條件與求解目標(biāo),有助于學(xué)生發(fā)現(xiàn)問題的基本要素與特征,即以“定時提醒”問題中的時間節(jié)點為條件,換言之,特定的時間點觸發(fā)相應(yīng)的事件響應(yīng)。
3.項目設(shè)計
活動2:“定時提醒”功能的方案設(shè)計。
知識技能:算法、自然語言描述算法。
活動要求:①想一想:學(xué)生2~3人一組思考以下問題。問題1:如何確定到達(dá)時間點?(計時/倒計時/計算時間差……)問題2:以何種方式提示?(文字/聲音/彈窗……)②說一說:小組代表分解實現(xiàn)“定時提醒”功能的步驟。
設(shè)計意圖:本環(huán)節(jié)以問題搭建腳手架,引導(dǎo)學(xué)生尋找問題條件到目標(biāo)實現(xiàn)之間的方法途徑,實現(xiàn)思路與技術(shù)實踐之間的連接。學(xué)生分組討論解決方案,形成良好的互動與分享,既發(fā)揮學(xué)生的自主性,又?jǐn)U展了方案設(shè)計的空間。在此基礎(chǔ)上,教師通過梳理學(xué)生的方案引出“算法”概念,加深理解,同時也可以根據(jù)學(xué)生的設(shè)計方案來調(diào)節(jié)難易程度。
活動3:“定時提醒”功能的算法描述。
知識技能:流程圖描述算法、算法結(jié)構(gòu)。
活動要求:①閱讀教材第20頁內(nèi)容,了解流程圖的符號與功能。②嘗試?yán)卯嫵誊浖L制流程圖。③閱讀教材第20~21頁,觀察繪制出的流程圖,說一說設(shè)計方案中用到哪種(些)算法結(jié)構(gòu)。④思考并調(diào)整:“重要的事情說三遍”,若需要提醒3次,如何修改流程圖?
設(shè)計意圖:從自然語言到直接編寫代碼以實現(xiàn)設(shè)計方案,對于初學(xué)編程的學(xué)生有困難?;顒?作為過渡,引出使用流程圖描述算法。為了正確繪制流程圖,學(xué)生自然會去閱讀了解流程圖的規(guī)范表示方法。學(xué)生通過繪制流程圖描述算法,體會自然語言描述與流程圖描述的區(qū)別,提高邏輯抽象思維能力,為以后算法與程序設(shè)計的學(xué)習(xí)做好鋪墊。這一部分利用“畫程”軟件可以讓學(xué)生借助快捷的數(shù)字化工具表達(dá)自己的思想,將思維可視化。最后,引導(dǎo)學(xué)生結(jié)合完成的流程圖了解算法結(jié)構(gòu)。
4.編程實現(xiàn)
活動4:“定時提醒”功能的編碼實現(xiàn)。
知識技能:程序運行、根據(jù)算法分析理解代碼。
活動要求:①試一試:打開半成品Python程序“2-1time.py”,嘗試運行,實現(xiàn)“定時提醒”(參考代碼如圖2)。②比一比:對比預(yù)設(shè)效果與運行結(jié)果,分析代碼功能。③改一改:程序可以如何修改完善?需要在什么位置修改代碼?
設(shè)計意圖:在活動3的基礎(chǔ)上,根據(jù)繪制好的流程圖,進(jìn)行編程實現(xiàn)。針對學(xué)生第一次接觸Python的學(xué)情,以“半成品”教學(xué)法降低程序編寫難度。這一部分提供“參考助手.txt”,以便學(xué)生修改完善時參考,在降低活動難度的同時也盡可能發(fā)揮學(xué)生的自我創(chuàng)新能力。
5.項目總結(jié)
知識技能:計算解決問題的過程、算法的描述、算法的三種基本結(jié)構(gòu)。
活動形式:學(xué)生代表總結(jié)、教師補充。
梳理提升:梳理學(xué)習(xí)過程,以此提升到編程解決問題的一般過程。
拓展探究:定時提醒功能是以時間為判斷依據(jù),調(diào)節(jié)用眼時間,促進(jìn)自律。其實,生活中,“定”不限于“時間”,如智能電飯煲,具有恒溫保溫作用,它是如何工作的?我們是否遇到過其他場景應(yīng)用了類似的工作模式?
設(shè)計意圖:讓學(xué)生將知識體系的構(gòu)建與實踐經(jīng)驗結(jié)合,進(jìn)一步加深對計算機解決問題的過程的理解。通過拓展,讓學(xué)生繼續(xù)思考類同模式,理解其他應(yīng)用原理及意義,實現(xiàn)“來源生活”到“回歸生活”,激發(fā)學(xué)生學(xué)習(xí)“編程與計算”的熱情。
設(shè)計后感
信息技術(shù)學(xué)科擁有著自身的話語體系和探究方法,《計算機解決問題的過程》在新版教材中,不僅是一個教學(xué)內(nèi)容,更是貫穿“算法與程序設(shè)計”的學(xué)科思想方法。以項目教學(xué)法開展教學(xué),知識框架雖然被打散,但知識本身是具有情境性的。因此,我們需要對教材內(nèi)容所涉及的知識點進(jìn)行解構(gòu)與重組,嵌入到真實的問題情境中,通過“問題串”搭建腳手架、“活動鏈”促進(jìn)思維持續(xù),引導(dǎo)學(xué)生在完成項目的同時落實學(xué)科核心素養(yǎng),讓學(xué)生成為真正具備數(shù)字化生存能力的數(shù)字化公民。