楊凡 趙繼紅 饒雨泰
摘 要:很多人學(xué)習(xí)《Java OOP》課程的時候會學(xué)到后面忘了前面,覺得要背要記的東西很多,往往學(xué)到一半就放棄了。而很多老師在教授這門課程的時候一般也是按章節(jié)來教授,一章講完才做練習(xí),理論和實踐總是割裂的,往往到實踐的時候,學(xué)生已經(jīng)把前面的理論忘記了。程序教學(xué)法應(yīng)用于《Java OOP》可以有效地解決這些問題,它主張把教學(xué)內(nèi)容劃分成學(xué)生更容易接受的小塊,對每一塊設(shè)置合理的問題讓學(xué)生及時反應(yīng),這樣老師可以及時反饋強化教學(xué)內(nèi)容。本文以《Java OOP》課程的最后一個單元JDBC為例,描述了程序教學(xué)法在這一單元的應(yīng)用,并在湖北科技職業(yè)學(xué)院的3個年級的相同專業(yè)的學(xué)生的教學(xué)上做了試點研究,發(fā)現(xiàn)明顯改善教學(xué)效果。
關(guān)鍵詞:程序教學(xué)法 Java OOP
中圖分類號:G421 文獻標識碼:A 文章編號:1672-3791(2014)07(a)-0164-02
1 課程簡介
Java OOP的全稱是Java Object-Oriented Programming,是計算機軟件測試專業(yè)的核心專業(yè)課程,它的后續(xù)課程幾乎涵蓋本專業(yè)所有核心專業(yè)課程,因此,學(xué)好這門課非常重要。這門課的理論內(nèi)容繁雜,各知識點的關(guān)系錯綜復(fù)雜,而這門課程的實踐內(nèi)容又往往需要綜合運用多個知識點,傳統(tǒng)的教學(xué)方法重理論輕實踐、而且也不可能跟蹤知識點提供大量而又合理的實踐,讓學(xué)生掌握每一個知識點就會運用一個知識點,所以往往會讓學(xué)生記得住理論但動不了手,會做一個應(yīng)用但又不會做其他的應(yīng)用程序。
2 斯金納程序教學(xué)法的基本原則
斯金納的程序教學(xué)法的基本原則有三點:第一,是小步子原則。根據(jù)還原論的觀點,如果原來一個較大、較復(fù)雜的問題分解成若干個較小、較簡單的小問題,那么就可以使要解決的問題簡化,通過解決這些小問題又可以綜合起來解決大問題。小步子原則就是把教學(xué)內(nèi)容劃分成有層次或遞進關(guān)系的小塊內(nèi)容,學(xué)生通過一個一個的小塊內(nèi)容的學(xué)習(xí)從而推進整個教學(xué)內(nèi)容的學(xué)習(xí)。這樣可以降低學(xué)習(xí)的難度,激發(fā)學(xué)習(xí)動力。第二,是積極反應(yīng)原則。針對每個小塊內(nèi)容都設(shè)置恰當(dāng)?shù)奶釂?,在學(xué)習(xí)每個小塊內(nèi)容的時候都讓學(xué)生對提問有所反應(yīng),使學(xué)生從消極的接受學(xué)習(xí)變?yōu)榉e極地反應(yīng)學(xué)習(xí),大大的提高學(xué)習(xí)效率。第三,是及時強化原則。在學(xué)生做出反應(yīng)后,老師要及時給出反饋,對錯誤的反應(yīng)給予糾正,直至正確;對正確的反應(yīng)給予肯定表揚和鼓勵,以強化學(xué)生及時明確正確的反應(yīng),可以提高學(xué)生的自信心,增進學(xué)習(xí)效果。
3 基于程序教學(xué)法的JDBC的教學(xué)設(shè)計
JDBC是《Java OOP》課程最后一個單元,教學(xué)目標是要求學(xué)生能運用JDBC編寫數(shù)據(jù)庫應(yīng)用程序。首先,把這一單元的內(nèi)容按照其邏輯先后順序分為四個部分:第一個部分是JDBC的概念;第二部分是JDBC的驅(qū)動類型;第三部分是java.sql包中的常用類的使用;第四部分是運用JDBC編寫出數(shù)據(jù)庫應(yīng)用程序。由于第四個部分是本單元學(xué)習(xí)的重點和難點,要學(xué)生一下子就完成一個數(shù)據(jù)庫應(yīng)用程序是非常困難的,于是把這個部分按照由局部到全局、由易到難的原則又分為四個小部分,依次為只修改函數(shù)的參數(shù)或類型的小改應(yīng)用、根據(jù)已有程序模擬出相似情境的程序、修改函數(shù)的功能或者增加新函數(shù)的大改應(yīng)用和寫出一個全新的應(yīng)用程序這四個部分。這樣,最終把本單元的內(nèi)容分為七個小部分。
為了使學(xué)生能夠?qū)λ鶎W(xué)知識積極反應(yīng)和及時強化,對上述七個部分的學(xué)習(xí)內(nèi)容都設(shè)置了合理的問題。由于第一部分和第2部分的學(xué)習(xí)內(nèi)容都需要用到JDBC概念圖來進行講解,那么第一部分講解完畢后,希望學(xué)生能夠正確的解釋JDBC概念圖,第二部分講解完畢后,希望學(xué)生能夠指出JDBC概念圖中的驅(qū)動類型。第三部分中常用的類之間相互關(guān)聯(lián)并擔(dān)負整個JDBC工作流程、各司其責(zé),所以第三部分講解完畢后希望學(xué)生能解釋JDBC的工作流程。前面三個部分的內(nèi)容最終全部都要綜合應(yīng)用到最后四個部分中,首先進行局部小改,把一個已經(jīng)完成的應(yīng)用程序發(fā)給學(xué)生,希望學(xué)生能夠做到該應(yīng)用的輸入數(shù)據(jù)的類型或個數(shù)改變時程序中應(yīng)該修改哪個函數(shù)的什么參數(shù)、如何修改;接下來,給出和該應(yīng)用相似的情境,希望學(xué)生能夠模仿寫出一個應(yīng)用程序來。然后進行局部大改,該應(yīng)用需要增加或者刪除某些功能,希望學(xué)生能夠正確寫出新函數(shù)或者準確找到要刪除的函數(shù);最后,給出和該應(yīng)用有些不太一樣的情境,希望學(xué)生能夠?qū)懗鲆粋€全新的完整的應(yīng)用程序。
4 基于程序教學(xué)法的JDBC的教學(xué)實踐
在湖北科技職業(yè)學(xué)院的11級、12級的計算機軟件測試專業(yè)的學(xué)生中,《Java OOP》這門課程就采用了程序教學(xué)法,而在10級該專業(yè)學(xué)生中這門課程沒有采用這種方法采用傳統(tǒng)的方法,在單元內(nèi)容全部講解完后才讓學(xué)生做出反應(yīng)。11級、12級這兩個年級的學(xué)生在學(xué)習(xí)這門課程最后一個單元JDBC時,整個教學(xué)活動如圖1所示。
整個教學(xué)活動科學(xué)合理的貫徹了程序教學(xué)法的三個原則,把教學(xué)內(nèi)容劃分成更好讓學(xué)生接受的小塊,在每一塊的學(xué)習(xí)后學(xué)生可以立即對設(shè)置的問題做出反應(yīng)并通過網(wǎng)絡(luò)及時提交給老師,老師對正確的回答給予鼓勵和表揚,對錯誤的回答給予引導(dǎo)糾正,這樣不僅能及時驗證和了解學(xué)生對當(dāng)前學(xué)習(xí)內(nèi)容的掌握程度,還可以避免學(xué)生累計錯誤影響到以后的學(xué)習(xí),讓學(xué)生在整個教學(xué)活動過程中都保持興趣和激情。在每個小塊內(nèi)容教學(xué)結(jié)束前,老師可以給接受快的學(xué)生設(shè)置更多同類型深層次的問題,給接受慢的學(xué)生足夠的引導(dǎo)使他們能自己發(fā)現(xiàn)自己的障礙在那里,從而強化各層次學(xué)生對當(dāng)前學(xué)習(xí)內(nèi)容的掌握和理解。最后有學(xué)生做出小結(jié),列出自己的錯誤和自己的收獲;老師做出小結(jié),列出要掌握的核心和要注意的問題。
然后進行下一個小塊教學(xué)內(nèi)容的教學(xué)活動。直到所有七個小塊內(nèi)容全部結(jié)束。
5 效果與評價
在湖北科技職業(yè)學(xué)院的3個年級的計算機軟件測試專業(yè)的學(xué)生中,采用了程序教學(xué)法的兩個年級的學(xué)生平均掌握知識的能力明顯好于另一個年級,單元項目完成的平均質(zhì)量明顯優(yōu)于另一個年級,學(xué)習(xí)和掌握相同的內(nèi)容的平均時間明顯短于另一個年級。程序教學(xué)法的應(yīng)用要求老師掌握教學(xué)內(nèi)容和學(xué)情,以便能夠把教學(xué)內(nèi)容劃分成適合學(xué)生的小塊,這樣才能夠?qū)γ總€小塊內(nèi)容設(shè)置合理的問題讓學(xué)生反應(yīng)并進行強化。程序教學(xué)法的應(yīng)用可以使學(xué)生和老師時刻都在互動,信息都是實時反饋,更有利于學(xué)生的學(xué)習(xí)興趣和注意力的保持,在編程類課程中可以廣泛采用程序教學(xué)法。
參考文獻
[1] 王世儒.JAVA程序設(shè)計研究[J].科技資訊,2014(1).
[2] 李文倬.程序教學(xué)法探討[J].科技創(chuàng)新導(dǎo)報,2014(3).