摘要:這篇文章結(jié)合了作者多年的實(shí)踐教學(xué)經(jīng)驗(yàn),指出了目前教學(xué)方面存在的問題,并有針對性地從教學(xué)模式、教學(xué)方法等多個(gè)方面探討了JAVA程序設(shè)計(jì)的課程教學(xué)改革。文中對教學(xué)的各個(gè)環(huán)節(jié)提出了新的建議并且經(jīng)實(shí)踐新的方式能提高學(xué)生的編程能力、自學(xué)能力、溝通能力和團(tuán)隊(duì)合作能力。
關(guān)鍵詞:JAVA; 教學(xué)模式; 教學(xué)方法; 教學(xué)改革
中圖分類號:G642文獻(xiàn)標(biāo)識碼:A文章編號:1009-3044(2008)36-2967-02
Investigation of Teaching Methods in Java
MENG Yu-qiao
(Jilin Teachers Institute of Engineering and Technology, Changchun 130052, China)
Abstract: In this paper, the author combine many years of teaching experience, point out existent question of aspects of teaching and from teaching mode, teaching methods and other aspects of the JAVA programming courses discuss teaching reform。The article introduce new advice to every phase of teaching and new method can improve student's programming ability, self-learning ability, communication skills and teamwork ability in practice.
Key words: JAVA; Teachining Mode; Teaching Methods; Teaching Reform
1 引言
面向?qū)ο蠹夹g(shù)引起了程序設(shè)計(jì)方法學(xué)的一場革命,它已經(jīng)替代面向過程的程序設(shè)計(jì)技術(shù),成為計(jì)算機(jī)應(yīng)用開發(fā)領(lǐng)域的主流技術(shù),JAVA語言便以它的純面向?qū)ο蟮忍攸c(diǎn)得到了計(jì)算機(jī)界的普遍歡迎和廣泛的應(yīng)用。作為計(jì)算機(jī)的主干課,它是一門理論性與實(shí)踐性均非常強(qiáng)的課程,如何使學(xué)生通過學(xué)習(xí)掌握面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,具備一定的項(xiàng)目開發(fā)能力便成了計(jì)算機(jī)教學(xué)中一個(gè)值得探討與研究的話題。
2 JAVA課程教學(xué)方法的研究
由于JAVA的發(fā)展和廣泛應(yīng)用,社會上對精通該語言并具有一定實(shí)際開發(fā)能力的人才的需求也越來越大。學(xué)校傳統(tǒng)的教學(xué)模式是以教師灌輸為主,學(xué)生被動的去接受知識,學(xué)生實(shí)訓(xùn)很少且常是學(xué)與練脫離,培養(yǎng)出來的學(xué)生要么是只懂理論知識缺少動手能力要么是對課程沒有學(xué)習(xí)興趣,難以取得理想的教學(xué)效果。基于這樣的情況,總結(jié)教學(xué)經(jīng)驗(yàn)并借鑒社會教學(xué)的優(yōu)秀模式,筆者提出課堂教學(xué)采取項(xiàng)目驅(qū)動教學(xué)法、案例教學(xué)法相結(jié)合,課后借助于網(wǎng)絡(luò)教學(xué)平臺進(jìn)行個(gè)性化學(xué)習(xí)再配合以實(shí)踐操作的教學(xué)方式。
項(xiàng)目驅(qū)動教學(xué)法是實(shí)施探究式教學(xué)模式的一種教學(xué)方法,學(xué)生不再把學(xué)習(xí)當(dāng)任務(wù),而是根據(jù)項(xiàng)目需求來學(xué)習(xí),由被動地接受知識變?yōu)橹鲃拥恼覍ぶR,能夠培養(yǎng)學(xué)生的自主學(xué)習(xí)、分析問題和解決問題的能力。
案例教學(xué)是為了實(shí)現(xiàn)經(jīng)過教學(xué)過程完成項(xiàng)目的目標(biāo),采用將完整的項(xiàng)目進(jìn)行合理的分解,得到一個(gè)個(gè)相對獨(dú)立的子項(xiàng)目,即通過對案例的分析和解決從而完成了對相關(guān)知識點(diǎn)的學(xué)習(xí)。
網(wǎng)絡(luò)教學(xué)平臺的使用可以使學(xué)習(xí)者的主觀能動性和個(gè)性潛能得到充分發(fā)揮,從而實(shí)現(xiàn)個(gè)性化學(xué)習(xí)并且讓教師及時(shí)了解學(xué)生的掌握情況進(jìn)行適當(dāng)?shù)倪M(jìn)度調(diào)節(jié)以達(dá)到更好效果。
實(shí)踐環(huán)節(jié)的設(shè)置其實(shí)是現(xiàn)在各個(gè)高校在語言類課程中必定安排的內(nèi)容,它最終會以項(xiàng)目成果的方式來體現(xiàn)學(xué)生對這門課程的真正掌握情況。
3 新教學(xué)模式在Java語言中的具體實(shí)現(xiàn)
3.1 課堂教學(xué)
在課堂上采用項(xiàng)目驅(qū)動和案例教學(xué)相結(jié)合的方式。首先,教師提出項(xiàng)目任務(wù);其次,告訴學(xué)生完成此項(xiàng)目需要的必要知識點(diǎn)包括重點(diǎn)和難點(diǎn)問題;再次,提出案例,通過對案例的分析和講解使學(xué)生掌握了相關(guān)的知識點(diǎn);最后,由學(xué)生自己動手對開始所提出的項(xiàng)目進(jìn)行設(shè)計(jì)實(shí)現(xiàn)。當(dāng)然,在學(xué)生還沒有完全掌握J(rèn)ava的理論知識的階段,項(xiàng)目的選擇和設(shè)計(jì)要具有針對性并且不能涉及的知識面太廣泛,以免造成學(xué)生的心理負(fù)擔(dān),反而使學(xué)生自信心不足以至于產(chǎn)生厭學(xué)的情緒。因此,在以項(xiàng)目驅(qū)動和案例教學(xué)相結(jié)合的方式中,恰當(dāng)?shù)陌咐榻B能夠產(chǎn)生提綱挈領(lǐng)的重要作用,使學(xué)生輕松的了解了需要掌握的知識點(diǎn)以及對該知識點(diǎn)的使用方法。在具體的項(xiàng)目實(shí)施過程中要由學(xué)生自己對項(xiàng)目進(jìn)行分析,歸納出需要解決的問題,并針對這些問題及預(yù)期的目標(biāo)制定相應(yīng)的解決方案。原則上來講,每一個(gè)階段的項(xiàng)目計(jì)劃應(yīng)該能夠體現(xiàn)出本階段要實(shí)現(xiàn)的目標(biāo)同時(shí)還要對以前的學(xué)習(xí)任務(wù)起到融會貫通的作用。這樣兩種教學(xué)方式相結(jié)合改變了傳統(tǒng)教學(xué)使學(xué)生在不知所以的狀態(tài)下被迫學(xué)習(xí),接受知識,而又不知有什么用途及如何使用學(xué)到的知識,它使學(xué)生能夠帶著問題去學(xué)習(xí)、去思考反過來又運(yùn)用所學(xué)到的知識去解決問題從而加深了對所學(xué)知識的理解和掌握。針對不同高校對課程設(shè)置的差異,在講解語法的基礎(chǔ)知識階段要有不同的側(cè)重點(diǎn)。我院的教學(xué)安排是在Java課程之前開設(shè)了C語言的教學(xué),由于C語言和Java的語法有共同之處,所以在講解基礎(chǔ)知識階段可以重點(diǎn)介紹不同之處,不必把每一個(gè)語法知識都重新介紹。書中的典型例題因?yàn)樗惴ㄊ枪潭ǖ模虼耍槐匾来沃v解,完全可以作為實(shí)踐環(huán)節(jié)或課后的訓(xùn)練來做。但是,在講解面向?qū)ο蟮募夹g(shù),比如類的概念及其特性的階段就要結(jié)合案例和項(xiàng)目重點(diǎn)進(jìn)行介紹。對于組件和GUI設(shè)計(jì)的內(nèi)容是另外一個(gè)重點(diǎn),也是難點(diǎn),但是,由于章節(jié)的安排,如果按教材順序講解,這一階段所剩下的課時(shí)將會較少,所以,應(yīng)該在開始時(shí)就計(jì)劃重、難點(diǎn)內(nèi)容的課時(shí),并調(diào)節(jié)其他內(nèi)容的教學(xué)安排。當(dāng)然,在課堂教學(xué)過程中,對于重點(diǎn)、難點(diǎn)知識的案例選擇也應(yīng)該由易到難,讓學(xué)生逐漸熟悉、掌握、運(yùn)用。
3.2 網(wǎng)絡(luò)平臺應(yīng)用
由于課堂教學(xué)時(shí)間有限,學(xué)生的個(gè)性差異會導(dǎo)致他們不同的學(xué)習(xí)能力,因此,就會存在一些課堂無法解決或暫時(shí)不理解的問題,所以在課堂講授之后還要開展針對個(gè)性化學(xué)習(xí)的網(wǎng)絡(luò)平臺。在網(wǎng)絡(luò)平臺上可以方便老師和學(xué)生課后的交流互動,使教師能夠及時(shí)地了解學(xué)生對知識的掌握情況并且安排相應(yīng)的教學(xué)內(nèi)容。網(wǎng)絡(luò)教學(xué)平臺還提供了齊全的教學(xué)大綱、實(shí)驗(yàn)大綱、課件、學(xué)生參考書、例題源碼等教學(xué)資料,學(xué)生可以在教學(xué)開始就通過課程平臺下載教學(xué)資源、軟件工具及輔助材料等,了解課程學(xué)習(xí)的各項(xiàng)信息,提交作業(yè),察看作業(yè)情況和成績,下載往屆學(xué)生的優(yōu)秀作品等。
3.3 實(shí)踐環(huán)節(jié)
語言類課程的實(shí)踐環(huán)節(jié)一般都包括兩種,一種是與課堂教學(xué)相匹配的上機(jī)實(shí)驗(yàn),它是針對課堂教學(xué)的階段性工作,主要目的是為了鞏固階段教學(xué)中的重、難點(diǎn)問題,要求的任務(wù)相對較簡單;一種是全部授課完畢之后的課程設(shè)計(jì)工作,他的目的是提高學(xué)生對語言的理解和綜合運(yùn)用能力,是與課堂聽講、自學(xué)和聯(lián)系相輔相成的、必不可少的環(huán)節(jié),要求相對也較高,要進(jìn)行問題的分析、總體結(jié)構(gòu)設(shè)計(jì)、用戶界面設(shè)計(jì)、程序設(shè)計(jì)基本技能和技巧的操作。在課程設(shè)計(jì)階段要把握兩大原則來達(dá)到效果:1) 要求所選項(xiàng)目應(yīng)覆蓋大部分關(guān)鍵知識點(diǎn),并能在所學(xué)知識的基礎(chǔ)上進(jìn)行相應(yīng)的延伸和擴(kuò)展;2) 要求有一定的代碼量,代碼在600行以上。題目由學(xué)生自己進(jìn)行選擇,他們可以選擇新穎的、感興趣的內(nèi)容,自己組織開發(fā)團(tuán)隊(duì),這樣的工作使他們能夠鍛煉自身的自學(xué)能力和創(chuàng)新能力,多人合作開發(fā)又培養(yǎng)了學(xué)生的溝通能力、團(tuán)隊(duì)合作能力及組織領(lǐng)導(dǎo)能力。
4 結(jié)束語
JAVA知識的講解涉及到的內(nèi)容很多,除了要介紹基礎(chǔ)的語法和面向?qū)ο蟮母拍钔膺€包括圖形、圖像處理、多媒體的系統(tǒng)開發(fā)等,由于課時(shí)有限只能有側(cè)重點(diǎn)的講授,更多的內(nèi)容可以放到課程設(shè)計(jì)中由學(xué)生根據(jù)自己的題目進(jìn)行相應(yīng)的擴(kuò)展。與傳統(tǒng)的教學(xué)方式相比,學(xué)生能夠更快速的掌握知識點(diǎn),在項(xiàng)目的設(shè)計(jì)過程中預(yù)先體驗(yàn)到了從事軟件開發(fā)過程中的團(tuán)隊(duì)協(xié)作、獨(dú)立解決問題等能力。文中探討了Java教學(xué)中的一些問題并根據(jù)作者多年的教學(xué)經(jīng)驗(yàn)提出了新的教學(xué)模式,但是,教學(xué)的關(guān)鍵在于因材施教,對不同的教學(xué)對象和實(shí)際的情況應(yīng)采取不同的處理方式。
參考文獻(xiàn):
[1] 張白一,崔尚林. 面向?qū)ο蟪绦蛟O(shè)計(jì)——Java[M]. 西安: 西安電子科技大學(xué),2006.
[2] 徐宏革. 關(guān)于Java程序設(shè)計(jì)課程教學(xué)的幾點(diǎn)感受[J]. 北京:海淀走讀大學(xué)學(xué)報(bào),2002.
[3] 邊小勇,盛玉霞. 計(jì)算機(jī)語言類課程教學(xué)法研究與實(shí)踐[J]. 計(jì)算機(jī)教育,2007.