山東省淄博第十七中學(xué) 李瑞雪
在高中信息技術(shù)教學(xué)中,使學(xué)生熟練掌握信息技術(shù)知識(shí)并能靈活解決實(shí)際問(wèn)題,是教學(xué)的重要目標(biāo)。運(yùn)用計(jì)算機(jī)知識(shí)解決實(shí)際問(wèn)題往往通過(guò)編程實(shí)現(xiàn)。因此,在教學(xué)活動(dòng)中提升學(xué)生的編程能力顯得尤為重要,教師應(yīng)從整體上把握編程部分的重難點(diǎn),認(rèn)真回顧與評(píng)估以往教學(xué)質(zhì)量,爭(zhēng)取尋找一套適合自身及學(xué)生實(shí)際的教學(xué)方法,確保在實(shí)現(xiàn)教學(xué)目標(biāo)的同時(shí)鍛煉學(xué)生的編程能力。
在高中信息技術(shù)教學(xué)中提高編程能力需要學(xué)生掌握系統(tǒng)扎實(shí)的基礎(chǔ)知識(shí),主要包括明確計(jì)算機(jī)解決問(wèn)題的過(guò)程,掌握編程所用軟件的功能,把握程序編寫的語(yǔ)法以及注意事項(xiàng),理解和掌握程序結(jié)構(gòu)和算法等。為使學(xué)生更好地掌握編程基礎(chǔ),一方面,Python程序編寫需要有特定環(huán)境,而特定環(huán)境通常由專門的開(kāi)發(fā)工具提供。因此,在教學(xué)實(shí)踐中教師應(yīng)注重為學(xué)生認(rèn)真講解Python程序開(kāi)發(fā)工具知識(shí),為其講解開(kāi)發(fā)工具的安裝、使用方法,簡(jiǎn)單講解開(kāi)發(fā)工具的運(yùn)行原理,尤其應(yīng)做好開(kāi)發(fā)工具安裝示范,使學(xué)生把握開(kāi)發(fā)工具的安裝步驟和細(xì)節(jié)。另一方面,在講解編程理論時(shí)教師應(yīng)注重聯(lián)系學(xué)生生活,列舉其較為熟悉的案例,降低其學(xué)習(xí)的陌生感,使其通過(guò)與熟悉事物的對(duì)比,更好地記憶和掌握。尤其考慮到編程知識(shí)與數(shù)學(xué)知識(shí)密切相關(guān),教師應(yīng)注意從數(shù)學(xué)知識(shí)切入,使學(xué)生認(rèn)識(shí)到編程知識(shí)與數(shù)學(xué)知識(shí)的內(nèi)在聯(lián)系。另外,為確保學(xué)生能當(dāng)堂掌握所學(xué)知識(shí),在課堂上教師應(yīng)和學(xué)生積極互動(dòng),及時(shí)發(fā)現(xiàn)和解決學(xué)生在學(xué)習(xí)與理解上存在的問(wèn)題,糾正其理解上的偏差。教師可以與學(xué)生一起回顧課堂內(nèi)容,并運(yùn)用思維導(dǎo)圖歸納所學(xué)知識(shí),對(duì)所學(xué)基礎(chǔ)知識(shí)全面覆蓋,幫助學(xué)生建立清晰的知識(shí)網(wǎng)絡(luò),避免其編程基礎(chǔ)知識(shí)出現(xiàn)漏洞。
例如,Python中的常量、變量是兩個(gè)非常重要的概念。在進(jìn)行該部分內(nèi)容教學(xué)時(shí)教師應(yīng)注意列舉具體的實(shí)例幫助學(xué)生理解和掌握二者之間的區(qū)別,使其在以后的編程中能靈活、正確地應(yīng)用。其中,常量相當(dāng)于某個(gè)具體的事物,而變量相當(dāng)于一個(gè)容器。在編程過(guò)程中可通過(guò)改變?nèi)萜髦械膶?duì)象實(shí)現(xiàn)對(duì)引用內(nèi)容的改變。如使用常量則需要修改很多代碼,不利于后期程序的維護(hù)。
為提升學(xué)生的編程能力,教師應(yīng)在其牢固掌握基礎(chǔ)知識(shí)的前提下為其展示編程的具體過(guò)程,使其在頭腦中形成清晰的編程步驟,能具體問(wèn)題具體分析,掌握不同問(wèn)題編程的有效切入點(diǎn)。一方面,對(duì)大多數(shù)高中生而言,編程知識(shí)的難度較大,很容易淺嘗輒止。為避免挫傷其學(xué)習(xí)積極性,激發(fā)其學(xué)習(xí)編程知識(shí)的興趣,增強(qiáng)其編程的自信心,使之持之以恒地開(kāi)展學(xué)習(xí)活動(dòng),教師應(yīng)做好對(duì)編程例題情境的精心設(shè)計(jì),遵循由易到難的原則。在課堂上可為學(xué)生講解如何編寫Python程序解決小學(xué)數(shù)學(xué)問(wèn)題,并通過(guò)程序的運(yùn)行,使其體會(huì)到編程的成就感,養(yǎng)成運(yùn)用計(jì)算機(jī)思維分析問(wèn)題的良好習(xí)慣。另一方面,為更好地激活信息技術(shù)課堂,使學(xué)生主動(dòng)地參與到學(xué)習(xí)活動(dòng)中,為學(xué)生展示例題后,教師應(yīng)鼓勵(lì)其先進(jìn)行討論,思考如何編寫程序,運(yùn)用哪些結(jié)構(gòu)和算法。然后教師通過(guò)提問(wèn)學(xué)生代表了解其思考和討論的結(jié)果,掌握其編程時(shí)出現(xiàn)的問(wèn)題,而后與學(xué)生一起剖析例題編程過(guò)程。每編寫一行代碼就與學(xué)生積極互動(dòng),使其理解每一行代碼表示的含義及編寫時(shí)注意的細(xì)節(jié),包括首字母的大小寫、程序?qū)R等,指引其養(yǎng)成良好的編程習(xí)慣,最大限度地降低編程細(xì)節(jié)上的錯(cuò)誤,提高代碼編寫質(zhì)量。
例如,講解Python例題時(shí),教師可以為學(xué)生講解較為熟悉的“雞兔同籠”問(wèn)題。使用Python程序解決該問(wèn)題的思路較多,編寫的代碼也不相同。為提高程序運(yùn)行效率及代碼的簡(jiǎn)潔度,教師在編寫程序之前對(duì)解決問(wèn)題的邏輯進(jìn)行分析,明確雞兔同籠時(shí)頭、腿與對(duì)應(yīng)數(shù)量之間的關(guān)系,在此基礎(chǔ)上確定程序順序及所用的程序知識(shí),如此可給學(xué)生帶來(lái)良好的編程啟發(fā),使其認(rèn)識(shí)到磨刀不誤砍柴工,只有養(yǎng)成先分析后編程的良好習(xí)慣,才能獲得事半功倍的編程效果。
提高學(xué)生的編程能力是不能一蹴而就的,需要學(xué)生的持久用心,更需要教師給予長(zhǎng)久的跟蹤和輔導(dǎo),使學(xué)生在編程的過(guò)程中認(rèn)真體會(huì)犯錯(cuò)和糾錯(cuò)的過(guò)程,逐漸提升編程能力。一方面,做好教學(xué)環(huán)節(jié)設(shè)計(jì)和安排后,教師還要做好每一個(gè)教學(xué)環(huán)節(jié)的跟蹤,實(shí)時(shí)掌握學(xué)生的學(xué)習(xí)進(jìn)度和學(xué)習(xí)質(zhì)量,以及時(shí)調(diào)整教學(xué)策略,確保教學(xué)目標(biāo)的順利完成。在課堂上教師可以提問(wèn)學(xué)生代表,根據(jù)其回答問(wèn)題的完整性和正確率,評(píng)估其學(xué)習(xí)效果。同時(shí),教師還要做好學(xué)生作業(yè)情況的檢查,一來(lái)督促學(xué)生按時(shí)完成作業(yè),二來(lái)收集學(xué)生在作業(yè)中出現(xiàn)的共性問(wèn)題,給予其針對(duì)性的輔導(dǎo)。另一方面,教師可利用課余時(shí)間與學(xué)生溝通交流,了解學(xué)生在編程過(guò)程中遇到的問(wèn)題,給出學(xué)習(xí)上的建議,鼓勵(lì)其積極上網(wǎng)查詢相關(guān)資料,認(rèn)真克服學(xué)習(xí)中的問(wèn)題。另外,在有條件的學(xué)校,教師應(yīng)注意充分利用網(wǎng)絡(luò)教學(xué)平臺(tái)做好對(duì)學(xué)生編程學(xué)習(xí)情況的跟蹤。教師可以在網(wǎng)絡(luò)教學(xué)平臺(tái)上回答學(xué)生遇到的編程問(wèn)題,并積極分享有關(guān)編程的資料,為其開(kāi)展自主學(xué)習(xí)活動(dòng)提供便利。
例如,教師在每一節(jié)課開(kāi)始之前預(yù)留五分鐘左右的時(shí)間要求學(xué)生認(rèn)真回顧上一節(jié)課學(xué)習(xí)的編程知識(shí),并針對(duì)學(xué)生不易理解的知識(shí)點(diǎn)進(jìn)行提問(wèn)。學(xué)生回答問(wèn)題時(shí)教師要認(rèn)真傾聽(tīng),尤其當(dāng)學(xué)生不能正確回答問(wèn)題時(shí)教師應(yīng)認(rèn)真思考原因,是學(xué)生未認(rèn)真學(xué)習(xí)還是教師講解得不夠明白,然后及時(shí)采取解決措施。
編程訓(xùn)練可使學(xué)生積累編程經(jīng)驗(yàn),掌握相關(guān)的編程技巧,促進(jìn)其編程水平的有效提升。在信息技術(shù)教學(xué)實(shí)踐中教師應(yīng)采取措施提高編程訓(xùn)練質(zhì)量,具體應(yīng)做好以下工作。一方面,在課堂上開(kāi)展編程訓(xùn)練活動(dòng)時(shí)為提高訓(xùn)練效率,應(yīng)注重根據(jù)編程訓(xùn)練習(xí)題的難易程度合理分配訓(xùn)練時(shí)間,給學(xué)生帶來(lái)緊迫感,更好地激活其思維,挖掘其編程潛力。在編程訓(xùn)練結(jié)束后教師應(yīng)及時(shí)開(kāi)展評(píng)價(jià)活動(dòng),在課堂上指出學(xué)生代碼編寫中的問(wèn)題和錯(cuò)誤,要求學(xué)生認(rèn)真分析原因,及時(shí)解決問(wèn)題,糾正問(wèn)題,同時(shí)應(yīng)看到學(xué)生的優(yōu)點(diǎn),給予肯定和鼓勵(lì),避免挫傷其學(xué)習(xí)熱情。另一方面,為營(yíng)造良好的編程訓(xùn)練環(huán)境教師可定期組織學(xué)生開(kāi)展編程比賽活動(dòng),并設(shè)置相關(guān)獎(jiǎng)品獎(jiǎng)勵(lì)勝出者。教師在對(duì)參賽者進(jìn)行評(píng)價(jià)時(shí)應(yīng)注重分析編寫的Python程序是否規(guī)范、是否出現(xiàn)嚴(yán)重錯(cuò)誤以及能否得出正確的運(yùn)行結(jié)果等。如此開(kāi)展訓(xùn)練活動(dòng),既能豐富學(xué)生的學(xué)習(xí)生活,又能更好地激發(fā)其參與編程訓(xùn)練的積極性。
例如,在完成Python程序知識(shí)講解后,教師可為學(xué)生布置“編寫Python程序打印九九乘法表”的編程訓(xùn)練活動(dòng)并規(guī)定好訓(xùn)練時(shí)間。為提高訓(xùn)練成功率,可每?jī)扇藙澐殖梢粋€(gè)小組,使其在訓(xùn)練中互幫互助,相互學(xué)習(xí),共同完成編程作業(yè),以積累相關(guān)的編程經(jīng)驗(yàn)和技巧,達(dá)到預(yù)期的訓(xùn)練目標(biāo)。
Python編程知識(shí)是高中信息技術(shù)的重難點(diǎn)。在教學(xué)實(shí)踐中教師不能僅滿足于學(xué)生掌握基礎(chǔ)知識(shí),應(yīng)將提升學(xué)生的編程能力納入教學(xué)目標(biāo)。教師應(yīng)認(rèn)真研究高中生的信息技術(shù)知識(shí)儲(chǔ)備及其對(duì)編程知識(shí)的認(rèn)識(shí)和理解程度,明確不同階段的教學(xué)目標(biāo),認(rèn)真總結(jié)以往教學(xué)經(jīng)驗(yàn),并注重調(diào)整教學(xué)策略,有針對(duì)性地開(kāi)展教學(xué)活動(dòng),促進(jìn)學(xué)生編程能力的有效提升,為以后信息技術(shù)知識(shí)的學(xué)習(xí)做好鋪墊。