吳雪花
摘 要:“人工智能”“虛擬現(xiàn)實(shí)”“互聯(lián)網(wǎng)+”等高新技術(shù)無(wú)一不表明編程是時(shí)代的需求,人們?cè)絹?lái)越懂得編程能力的重要性。就初中階段而言,信息技術(shù)學(xué)科的核心素養(yǎng)是學(xué)生適應(yīng)終身發(fā)展的關(guān)鍵能力,信息技術(shù)學(xué)科核心素養(yǎng)包括“信息意識(shí)”“計(jì)算思維”“數(shù)字化學(xué)習(xí)”“信息責(zé)任”,說(shuō)到“計(jì)算思維”也必提編程。以蘇科版信息技術(shù)八年級(jí)第四章“程序設(shè)計(jì)”為例,探索初中信息技術(shù)課堂中編程能力素養(yǎng)的培養(yǎng)方法。
關(guān)鍵詞:編程能力素養(yǎng);信息技術(shù);培養(yǎng)方法
初中階段程序設(shè)計(jì)要適應(yīng)基礎(chǔ)教育對(duì)學(xué)生核心素養(yǎng)培養(yǎng)的要求,突破舊規(guī)。根據(jù)江蘇省初中信息技術(shù)教材的編寫,Visual Basic(以下簡(jiǎn)稱VB)語(yǔ)言作為初中階段的入門語(yǔ)言。VB是微軟公司開發(fā)的一種通用的基于對(duì)象的程序設(shè)計(jì)語(yǔ)言,為結(jié)構(gòu)化的、模塊化的、面向?qū)ο蟮?、包含協(xié)助開發(fā)環(huán)境的事件驅(qū)動(dòng)為機(jī)制的可視化程序設(shè)計(jì)語(yǔ)言。作為入門語(yǔ)言,VB簡(jiǎn)單、直觀、易學(xué)、易用。本文意在探究初中如何開展編程教學(xué),探索提高學(xué)生編程能力素養(yǎng)的一些方法。
一、編程興趣的建立
愛因斯坦曾經(jīng)說(shuō)過(guò)“興趣是最好的老師”,這同樣適用于程序設(shè)計(jì)。然而剛升入初中的孩子,大部分對(duì)編程興趣不大,或者說(shuō)還沒開始接觸就有一種恐懼心理,認(rèn)為編程枯燥、乏味、難度大。因此,教學(xué)的首要任務(wù)就是激發(fā)學(xué)生對(duì)編程的興趣,一旦他們對(duì)編程有了興趣,就會(huì)自主地去探索、研究。
1.解決“編程恐懼癥”
在程序設(shè)計(jì)教學(xué)中,我發(fā)現(xiàn)學(xué)生對(duì)一些編程的原理難以理解。為了讓學(xué)生直觀理解,我借助于他們?nèi)粘5恼n程來(lái)遷移。比如,在引入“循環(huán)”這個(gè)概念時(shí),我想到了生物課上細(xì)胞的分裂過(guò)程,一個(gè)細(xì)胞分裂一次后變成兩個(gè)細(xì)胞,這樣被重復(fù)執(zhí)行的過(guò)程,被稱為循環(huán)。
參考代碼:
Private Sub Form_Load()
a = 1? ?//原始細(xì)胞有1個(gè)
For i = 1 To 4 Step 1
a = a * 2
Next i
Print a? ? //經(jīng)過(guò)4次分裂后,a的值變成16個(gè)
End Sub
2.創(chuàng)設(shè)豐富的教學(xué)情境
初中生剛接觸程序編寫,在教學(xué)過(guò)程中要時(shí)刻關(guān)注學(xué)生對(duì)該課程的基本體驗(yàn),所以創(chuàng)設(shè)豐富的教學(xué)情境有利于激發(fā)學(xué)生的學(xué)習(xí)興趣。
比如,在第一課講授“計(jì)算機(jī)程序并不神秘”時(shí),為了導(dǎo)入程序的概念,我就利用了“狼、羊、白菜過(guò)河”游戲。
情境:獵人帶著一只狼、一只羊和一些白菜過(guò)河,但渡船太小,一次只能帶一樣。因?yàn)槔且匝?,羊?huì)吃白菜,所以狼和羊、羊和白菜不能在無(wú)人監(jiān)視的情況下相處,此時(shí),你能幫助獵人過(guò)河嗎?
利用Flash動(dòng)畫,讓學(xué)生自己動(dòng)手闖關(guān),總結(jié)出具體指令。這樣,就可以順理成章地引出程序的概念,通過(guò)執(zhí)行一些有序的指令完成一項(xiàng)具體工作,這些指令的集合就是程序。通過(guò)小游戲,能夠迅速調(diào)動(dòng)學(xué)生的學(xué)習(xí)興趣。
二、準(zhǔn)備學(xué)案
針對(duì)課堂需要,教師適時(shí)準(zhǔn)備一些學(xué)案非常有必要。特別是學(xué)習(xí)編程初期,要求學(xué)案中有明確的任務(wù)要求,每個(gè)任務(wù)之間要分層明確,起到進(jìn)階作用。當(dāng)然,學(xué)案的形式可以多種多樣,最常見的就是文本類型的,把整堂課的內(nèi)容、過(guò)程展示給學(xué)生看,但是未免有些枯燥。初中學(xué)生可以直接利用平臺(tái),如Moodle平臺(tái)等,每節(jié)課的內(nèi)容都能保留在平臺(tái)里,方便后續(xù)的學(xué)習(xí)和查閱。
三、準(zhǔn)備微課以供參考
信息技術(shù)課上,一位教師要面對(duì)整班四五十位學(xué)生,每位學(xué)生的接受程度又不同,為了讓所有學(xué)生都能不斷提高編程能力,教師授課的進(jìn)度、廣度、深度只能綜合考慮大部分學(xué)生的能力。45分鐘的教學(xué)在適當(dāng)?shù)狞c(diǎn)撥之后,就需要嘗試讓學(xué)生進(jìn)行自我探究,這就導(dǎo)致部分基礎(chǔ)薄弱的學(xué)生在沒完全掌握知識(shí)點(diǎn)的情況下被“逼迫”自我進(jìn)行研究,因此微課的準(zhǔn)備就變得至關(guān)重要。微課需要教師做到精而簡(jiǎn),學(xué)生可以針對(duì)自己的需要來(lái)選擇觀看某節(jié)微課,且該微課知識(shí)點(diǎn)是在學(xué)生探究過(guò)程中能起到支撐他們完成任務(wù)作用的,切忌把微課做成視頻灌輸?shù)男问健?/p>
在微課的準(zhǔn)備中,必須關(guān)注培養(yǎng)學(xué)生的自主學(xué)習(xí)意識(shí)。微課視頻雖短,但可以通過(guò)布置問題的方式引導(dǎo)學(xué)生主動(dòng)學(xué)習(xí)。例如,在編程求兩數(shù)最大公約數(shù)時(shí),我先闡明了求取方法“輾轉(zhuǎn)相除法”。然后給出習(xí)題,讓學(xué)生實(shí)踐學(xué)習(xí)。設(shè)給定兩個(gè)正整數(shù)a=112和b=64,求最大公約數(shù),并在微課中設(shè)置只有答對(duì)才能進(jìn)行一下步學(xué)習(xí);如果答錯(cuò),還可以回到前面的知識(shí)講解,重新學(xué)習(xí)后進(jìn)行練習(xí)。
通過(guò)練習(xí),幫助學(xué)生理解算法,也可以更好地為編程做準(zhǔn)備。
四、基礎(chǔ)任務(wù)和拓展任務(wù)相結(jié)合
VB編程,既要求學(xué)生學(xué)會(huì)理論知識(shí),又要求學(xué)生利用知識(shí)解決實(shí)際操作,因此,“任務(wù)驅(qū)動(dòng)”教學(xué)法被應(yīng)用起來(lái)。以基礎(chǔ)任務(wù)為主線,貫穿整節(jié)課,再以拓展任務(wù)來(lái)延伸知識(shí)點(diǎn)的運(yùn)用。
比如,在教授對(duì)象的三要素之一——方法時(shí),講到Circle(畫圓)、Line(畫線)方法時(shí),首先給出學(xué)生的任務(wù)一,畫出一個(gè)圓和一條線。學(xué)生根據(jù)教師的講解,很快可以完成該任務(wù)。
參考代碼:
Private Sub Form_Load()
Circle(2000, 2000),1000? //畫一個(gè)圓心(2000,2000),半徑1000的圓
End Sub
Private Sub Form_Load()
Line(2000,2000)-(3000,2000)? //兩點(diǎn)之間畫一條直線
End Sub
在此基礎(chǔ)上,我又給出了任務(wù)二,讓每個(gè)學(xué)生都能發(fā)揮自己的想象力,利用上述兩個(gè)知識(shí)點(diǎn),給出他們的創(chuàng)意。例如,有學(xué)生編寫代碼繪制出一輛車。
代碼:
Private Sub Form_Load()
Form1.Circle(2000,3000),500
Form1.Circle(4000,3000),500
Form1.Line(1000,2500)-(5000,2500)
Form1.Line(1000,1000)-(5000,1000)
Form1.Line(1000,1000)-(1000,2500)
Form1.Line(5000,1000)-(5000,2500)
End Sub
運(yùn)行結(jié)果:
在整個(gè)任務(wù)驅(qū)動(dòng)過(guò)程中,學(xué)生不僅對(duì)新接觸的知識(shí)點(diǎn)三要素有了練習(xí),還對(duì)前面學(xué)的坐標(biāo)有了鞏固?!叭蝿?wù)驅(qū)動(dòng)”教學(xué)法讓學(xué)生帶著真實(shí)的任務(wù)在不斷探索中學(xué)習(xí),并且一個(gè)個(gè)任務(wù)的攻克會(huì)讓學(xué)生獲得前所未有的成就感,進(jìn)一步刺激他們的求知欲,給足他們學(xué)習(xí)VB編程的動(dòng)力。
現(xiàn)代高科技生活中的“人工智能”“虛擬現(xiàn)實(shí)”“互聯(lián)網(wǎng)+”等高新技術(shù)都離不開編程。在歐美國(guó)家,更是將計(jì)算機(jī)編程能力與閱讀、算術(shù)、寫作能力一并作為四大基本能力來(lái)考核,可以說(shuō)編程是當(dāng)今社會(huì)的需求,在初中階段開始培養(yǎng)學(xué)生編程能力素養(yǎng)非常必要。然而,這是一個(gè)需要慢慢探索的過(guò)程,不是一朝一夕能解決的,提高學(xué)生的編程能力素養(yǎng),我們?nèi)沃囟肋h(yuǎn)。