張凱茨
● 教材分析
本課是蘇科版初中八年級信息技術(shù)教材第四章“程序設(shè)計”第一節(jié)第二課時的內(nèi)容。本課主要圍繞VB中的對象、屬性、事件等知識點展開,是本單元重要的知識基礎(chǔ)。在信息技術(shù)教學中培養(yǎng)學生的計算思維,就是要讓學生學會如何運用計算機基礎(chǔ)概念求解學習中遇到的問題。而“對象”“屬性”“事件”正是計算機學科的基礎(chǔ)概念,所以學習好本節(jié)知識內(nèi)容至關(guān)重要。
● 學情分析
本課的授課對象是八年級的學生。學生在第一課時的學習中,對VB的界面、程序調(diào)試和代碼編寫的過程都有了初步的了解,體驗了一些利用VB編寫的有趣的小程序,并對程序設(shè)計充滿了好奇與興趣,但對VB中的對象、屬性、事件卻缺少系統(tǒng)的認識。
● 教學目標
知識與技能目標:了解建立程序界面、設(shè)置對象屬性的一般過程;理解“對象”“屬性”和“事件”的含義。
過程與方法目標:通過修改程序,掌握程序界面建立的方法;通過編寫程序,體會程序設(shè)計的過程,發(fā)展計算思維。
情感態(tài)度與價值觀目標:通過程序的編寫,提高學習程序設(shè)計的興趣。
行為與創(chuàng)新目標:在程序編寫中,加入自己的想法,創(chuàng)新改良程序。
● 教學重點、難點
重點:理解“對象”“屬性”和“事件”的含義。
難點:規(guī)范完整地書寫代碼。
● 教學過程
1.試玩程序,初步體驗
師:在上課之前,老師先給大家演示一款手機軟件,并且我會問它幾個問題,看它能不能回答。(教師在課堂上用手機演示Siri軟件)
師:今天天氣如何?
Siri:下面是今天的天氣情況(并推送到手機上)。
師:什么是程序設(shè)計?
Siri:好的,請過目(將百度百科上關(guān)于程序設(shè)計的內(nèi)容推送到手機上)。
師:剛剛和老師對話的軟件叫什么?
生:Siri。
師:用Siri來解決問題分為哪幾個步驟?
生(思考后回答):使用者先提出問題,然后Siri將問題輸入、處理,最后通過語音或者文字的形式反饋出來。
師:老師今天也給大家準備了一個簡易版的Siri軟件(如圖1),請大家玩一玩并思考,你進行了怎樣的操作,就會出來不同的結(jié)果呢?
生(試玩后回答):單擊不同的按鈕,會顯示不同的答案。
師:在沒有學習VB之前,這樣說沒有任何問題。但以后我們要說得更專業(yè)一點,叫“觸發(fā)不同的對 象”。
教師打開“我的Siri”源文件,邊演示邊解釋:VB是一款面向?qū)ο蟮某绦蛟O(shè)計軟件。上節(jié)課中,同學們說像“畫圖”中工具欄的東西,叫控件箱。每一種控件都有其自身的功能,將它們拖到窗體上,就生成了具有這個控件所有功能的具體對 象。
設(shè)計意圖:以學生的興趣為突破點,用Siri實物演示激發(fā)學生興趣。演示過后,通過問題激發(fā)學生思考Siri大致的工作流程:輸入—處理—反饋。通過試玩簡易版Siri使學生初步建立起“對象”的概念。
2.修改程序,內(nèi)化概念
教師演示選中不同的對象,讓學生觀察屬性窗口的變化。學生會發(fā)現(xiàn)每個對象都可以被選中,并會在“屬性”窗口顯示其相關(guān)屬性。
為了測試學生對“對象”概念的理解,教師提出:“這個程序中共有幾個對象?”在學生猶豫不定時,給出提示:在單擊界面各部分時,請觀察屬性窗口的變化。通過實驗,大部分學生形成了清晰肯定的答案,在數(shù)“對象”時,便不會漏掉窗體對象。
此時,教師打開“半成品Siri”(三個按鈕中代碼均已寫好,但“今天周幾”按鈕的事件使用“mouse move”,其余按鈕事件使用“click”),讓學生試著運行程序,對比“完成版Siri”第一行三個按鈕的功能,并討論這個程序需要完善的問題(如圖2)。
討論得到任務(wù)一:①修改“今天幾號”按鈕的屬性;②新建“回答”label標簽;③測試程序。
師:在剛才的測試中,你們有沒有遇到什么問題?
生:在“今天星期幾”這個問題上,還沒有單擊鼠標,結(jié)果就已經(jīng)出來了。
師:在窗體上能夠找到問題所在嗎?你們覺得問題出在哪里呢?
生:窗體上看不出任何不同,問題應(yīng)該出在代碼上。
師:那我們一起來探索一下,看看代碼,查找原因并修改。
教師操作演示如何打開代碼,讓學生觀察三個按鈕對應(yīng)的三段代碼,哪段與其他兩段不一樣。學生通過對比代碼中的“click”與“mouse move”引出事件的概念,并舉例說明“click”鼠標單擊與“mouse move”鼠標移動是兩個不同的事件。教師在桌面上分別“單擊”“雙擊”“右擊”文件夾,讓學生明白不同的事件觸發(fā)同一個對象會形成不同的結(jié)果。
教師根據(jù)學生找到的“mouse move”問題,布置任務(wù)二,要求修改成單擊事件。
設(shè)計意圖:此環(huán)節(jié)是本課的重點內(nèi)容。教師首先通過演示選中不同對象,引導學生觀察不同類型的對象有不同的屬性;然后讓學生數(shù)一數(shù)程序中的“對象”的個數(shù),目的是考查學生是否已真正理解了“對象”的概念,也是換種方式再次強調(diào)對象和屬性的概念以及它們之間的聯(lián)系。學生只有充分理解“對象”“屬性”以及它們之間的聯(lián)系才能在后續(xù)的學習中更好地理解“事件”這個概念。學生在完成任務(wù)一時測試程序會發(fā)現(xiàn)教師預(yù)先設(shè)下的小“陷阱”,從而引出對“事件”概念的講解。而“事件”的概念不僅僅存在于VB程序設(shè)計中,還普遍存在于信息技術(shù)課程之中,于是筆者舉了一個“單擊、雙擊、右擊文件夾”的例子,讓學生更直觀地理解用不同事件去觸發(fā)同一個對象會有不同的結(jié) 果。
3.學寫代碼,掌握精髓
師:對比成品Siri,半成品Siri還少了什么按鈕?
生:“顯示時間”“退出”按鈕。
師:請大家新建這兩個按鈕,嘗試運行,看看是否有問題?想想為什 么?
生:新建的“現(xiàn)在幾點”“退出”兩個按鈕沒有用。因為我們沒有寫代碼。
教師操作并解釋:“雙擊”按鈕,會發(fā)現(xiàn)代碼部分是空白,按鈕只是提供了觸發(fā)進入哪段程序的入口,而具體解決問題的是程序內(nèi)部編寫的代碼。
教師帶領(lǐng)學生觀察可以運行的按鈕的代碼,并分析它運行的過程;逐一解釋VB代碼書寫的規(guī)范,注意語法格式,并給每個對象命名,以便在代碼模式下進行區(qū)分;帶領(lǐng)學生分析什么對象被什么事件觸發(fā),什么代碼段執(zhí)行了什么操 作。
教師布置任務(wù)三請學生完善“時間”“退出”按鈕。
設(shè)計意圖:通過讓學生發(fā)現(xiàn)“新建”按鈕無響應(yīng),啟發(fā)學生自己找到問題所在—— 需要通過代碼控制響應(yīng)內(nèi)容,從而讓學生更直觀地了解程序設(shè)計中代碼的重要性。由于規(guī)范完整地書寫代碼是本節(jié)課的難點,所以筆者帶著學生一句句梳理已經(jīng)寫好的代碼,讓學生理解每一句代碼的含義和書寫規(guī)則,并在實際操作中(故意寫錯代碼,導致運行出錯)強調(diào)語法規(guī)范的重要 性。
4.實踐創(chuàng)新,張揚個性
教師演示修改程序圖標,生成EXE文件的過程。布置任務(wù)四:給自己的Siri增加個性化的按鈕,給EXE文件修改生成圖標。教師展示兩個做得完整、帶有個性問題按鈕的學生作品,并點評,圍繞“對象”“屬性”“事件”的概念總結(jié)編寫“我的Siri”的過程。
師:現(xiàn)在你們能回答這個問題了嗎?我們做的Siri對按鈕上的問題進行解答的這個處理過程是怎樣的?當我們用按鈕單擊現(xiàn)“現(xiàn)在幾點了”,為什么就會在文本框中輸出時 間?
生:使用代碼調(diào)用電腦系統(tǒng)中的時間,讓它顯示在文本框中。
師:我們編寫的計算機Siri與實際的Siri區(qū)別在哪里?你希望今后再做哪些提升?
生1:功能少了些。
生2:沒有語音輸入功能。
……
教師解釋手機Siri的工作原理:通過語音識別技術(shù)將語言轉(zhuǎn)換成手機系統(tǒng)可識別的信息,然后在它巨大的數(shù)據(jù)庫中進行比對,如果系統(tǒng)數(shù)據(jù)庫中有這個問題,它就執(zhí)行相應(yīng)的指令。
師:我們今天所做的Siri就是它的一個簡化版,但原理是相通的。在今后的學習中,相信大家可以做出更智能、更人性化的程序來!希望大家存好工程文件和窗體文件,這樣便于以后在此基礎(chǔ)上進行改進。下面,給大家演示一個老師所做的Siri2.0版本(增加一個按鈕“放首音樂吧”,在音樂聲中結(jié)束課 程)。
設(shè)計意圖:學生已經(jīng)在“玩”“改”“學”三個任務(wù)中掌握了本節(jié)課的重難點內(nèi)容,了解了簡易版的Siri的工作原理和代碼書寫規(guī)則,并在此過程中有了很多的靈感和小創(chuàng)意。任務(wù)四的設(shè)置主要是為了增加課堂的趣味性,讓學有余力的學生獲得更多的成就感。同時,也給后進生更多的時間去完成之前的三個基礎(chǔ)任務(wù)。通過演示部分學生作品,提升學生的學習興趣,展現(xiàn)學生風采;總結(jié)Siri的原理,給學生鼓勵,消除學生對程序設(shè)計的神秘感,提升其學習興趣,便于后續(xù)學習;最后通過一個Siri2.0版本的演示告知學生保存工程文件和窗體文件的意義——可以對自己的作品進行反復(fù)的修改和優(yōu)化。
● 教學反思
本課遵循體驗式教學四步法——玩、改、學、做,設(shè)計了三個基本任務(wù)和一個拓展任務(wù),三個任務(wù)的銜接都是以上一個任務(wù)遺留下來的小問題為突破口,讓學生自己發(fā)現(xiàn)從而自然過渡。例如,第一個任務(wù)——搭建程序界面,遺留一個按鈕的事件為mouse move,其余為click事件。學生在完成第一個任務(wù)的同時,會發(fā)現(xiàn)問題,從而過渡到任務(wù)二,引入事件。完成任務(wù)二的學生會發(fā)現(xiàn)部分按鈕無響應(yīng)的情況,繼而引出任務(wù)三——VB代碼的書寫。學生在操作中,主動發(fā)現(xiàn)問題,積極思考,想辦法解決問題,這改變了傳統(tǒng)程序設(shè)計課程中,學生被動學習,一味模仿的現(xiàn)狀,從計算思維層面提升了他們的操作技能。
在教學中讓學生領(lǐng)會“對象、屬性、事件”這一計算機科學的基礎(chǔ)概念是本堂課的重中之重,讓學生“知其然也知其所以然”,讓學生對學科的內(nèi)容組織不只停留在技術(shù)活動層面,還要在計算思維的引領(lǐng)下推進到技術(shù)思想層面,這樣的教學活動才有意義。計算思維的培養(yǎng)不是在某一節(jié)具體的課中就能實現(xiàn)的,而是需要教師在平時教學中進行點點滴滴的滲透。本節(jié)課中,筆者將“事件”概念與文件夾的操作這一知識點結(jié)合起來,讓學生發(fā)現(xiàn)關(guān)聯(lián)點,從而理解“事件”概念的內(nèi)涵,這就是計算思維在課堂中滲透的具體體現(xiàn)。這樣的例子在教學中還有很多,有待于教師在平時教學中發(fā)掘與提煉。教師要從教學中遇到的問題出發(fā),引導學生找到解決問題的方法和思路,使之看到問題之外的問題、方法之外的方法。
點 評
本節(jié)課主要圍繞體驗式教學四步法在程序設(shè)計課程中的應(yīng)用而展開。一方面,通過體驗式教學四步法,將本課的對象、屬性、事件等概念設(shè)計成活動,以深化學生的理解;另一方面,通過對這些概念之間關(guān)系的搭建,促成學生對計算機工作方式的理解,也就是我們所說的計算思維的形成。
教學設(shè)計分為“玩”“改”“學”“做”四大模塊,先讓學生玩一玩成品的簡易Siri程序,其目的是激發(fā)學生學習興趣,讓學生在玩中初步接觸和體驗本課的重點概念——對象。在以往的教學中,教師通常是通過打比方的方法來解釋“對象”概念,這不如讓他們通過VB作品感受來得直接,玩過后再通過簡單易理解的數(shù)“對象”個數(shù),以強化學生對對象的理解?!案囊桓摹杯h(huán)節(jié)設(shè)計了待修改的屬性,讓學生親歷各對象屬性修改前后的變化,使其更直接而有效地理解了屬性。在以往的教學中,教師常常將一個物體類比成對象,將物體的顏色、大小、位置等類比成屬性,來給學生解釋對象和屬性,而學生聽完多半還是一頭霧水,而本課直接用“玩一玩”和“改一改”的方法進行,成效明顯?!皩W一學”環(huán)節(jié)是先給學生設(shè)置困難,如設(shè)計了初學者經(jīng)常會犯的錯:只搭界面、不寫代碼。而學生能夠很快發(fā)現(xiàn)問題的原因,是因為在上一個環(huán)節(jié)中,雖然沒有寫過代碼,但是在修改時已經(jīng)看到過代碼段,關(guān)鍵知識點的難度又一次因為體驗過而被降低。這些環(huán)環(huán)相扣的設(shè)計,讓整個課程內(nèi)容的推進由易至難,流暢有序。最后在“做一做”環(huán)節(jié),學生通過設(shè)計創(chuàng)新,進一步鞏固了課堂學習的內(nèi)容。
在將計算思維融入教學方面,張老師也有以下實踐。第一,引導學生觀察和分析軟件工作的方式:輸入—處理—反饋。這是計算機工作的基本方式,看似簡單帶過的內(nèi)容,實則體現(xiàn)了教師“以計算機科學家的方式思考問題”的計算思維教學思路。第二,強調(diào)窗體對象,這也是在平常的教學中不常見的,但是只有通過教師對類似問題的不斷梳理,學生才會建立所謂“面向?qū)ο蟆本幊痰乃枷?,理解計算機處理問題時對象化的思路。第三,教師和學生不僅在本節(jié)課對“我的Siri程序”進行了版本的多次更新,最后還通過總結(jié),暢想了它有可能的發(fā)展,這種簡單程序的不斷修改完善,其實也體現(xiàn)了計算機工作中迭代的思想。
體驗式教學四步法的設(shè)計,讓教學內(nèi)容更貼近了學生,也更貼近了知識技能本身,因而使課堂效率得到了很大提升。計算思維的融入,讓計算機的基本工作原理在每一課中漸漸深入學生的內(nèi)心,為他們今后通過計算機解決問題提供了思路。二者的結(jié)合讓這節(jié)課上得非常精彩,值得我們品味和思索。