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