張立涓
(深圳職業(yè)技術(shù)學(xué)院 廣東 深圳 518055)
高職面向?qū)ο蟪绦蛟O(shè)計(jì)(Java)課的教學(xué)探索與實(shí)踐
張立涓
(深圳職業(yè)技術(shù)學(xué)院 廣東 深圳 518055)
結(jié)合筆者多年對(duì)面向?qū)ο蟪绦蛟O(shè)計(jì)(Java)課程的教學(xué)實(shí)踐,針對(duì)目前高職院校面向?qū)ο蟪绦蛟O(shè)計(jì)課程的教學(xué)所面臨的問題,探索并總結(jié)出“激發(fā)興趣,重建信心;授之以漁,事半功倍;任務(wù)牽引,循序漸進(jìn),激發(fā)成就感”為主要內(nèi)容的高職教學(xué)方法。實(shí)踐證明,該教學(xué)方法有利于提高學(xué)生的學(xué)習(xí)興趣和學(xué)習(xí)信心,提高教師的教學(xué)水平和教學(xué)質(zhì)量。
高職;教學(xué)方法;教學(xué)實(shí)踐;學(xué)習(xí)興趣
目前,各高職院校都開設(shè)了面向?qū)ο蟪绦蛟O(shè)計(jì)類的課程,通常無外乎C++或者是Java程序設(shè)計(jì)語言。而學(xué)習(xí)面向?qū)ο蟪绦蛟O(shè)計(jì)課程之前學(xué)生大都學(xué)習(xí)過C語言,學(xué)習(xí)面向?qū)ο蠡A(chǔ)課程后還需要學(xué)習(xí)J2ME/JSP等相關(guān)后續(xù)課程,因此這類面向?qū)ο蟪绦蛟O(shè)計(jì)的基礎(chǔ)課程,具有承前啟后的作用,如何幫助學(xué)生建立起面向?qū)ο蟮木幊趟枷搿⑴囵B(yǎng)學(xué)生編程興趣、掌握編程基本方法成為這門課程的主要任務(wù)。
根據(jù)筆者多年的教學(xué)經(jīng)驗(yàn),由于學(xué)生在學(xué)習(xí)面向?qū)ο蟪绦蛟O(shè)計(jì)課程之前,都學(xué)習(xí)過C語言,對(duì)編程語言有了一定的了解,有很多學(xué)生在學(xué)習(xí)C語言的過程中已經(jīng)開始對(duì)程序設(shè)計(jì)類課程開始望而卻步了,甚至對(duì)編程類課程采取放棄的態(tài)度,他們覺得“C語言都沒學(xué)好,Java肯定也學(xué)不好了”,這種心態(tài)嚴(yán)重影響了教學(xué)效果。針對(duì)這樣的情況,筆者根據(jù)自己多年擔(dān)任面向程序設(shè)計(jì)類課程教學(xué)的經(jīng)驗(yàn),探索了一些行之有效的教學(xué)方法。
筆者曾經(jīng)對(duì)2007級(jí)和2008級(jí)共4個(gè)班級(jí)的學(xué)生在開始課程教學(xué)前做了一次問卷調(diào)查,調(diào)查結(jié)果如表1所示。
表1 問卷調(diào)查結(jié)果
如表1調(diào)查結(jié)果顯示,大部分學(xué)生興趣不濃,少部分學(xué)生還沒有開始學(xué)習(xí)就已經(jīng)采取消積放棄的態(tài)度了,綜合多年的經(jīng)驗(yàn)以及與學(xué)生的溝通,筆者分析出現(xiàn)上述情況的主要原因如下:
1.面向?qū)ο蟪绦蛟O(shè)計(jì)(Java)這門課程開設(shè)在第二學(xué)年第一學(xué)期,學(xué)生在第一學(xué)年學(xué)習(xí)了C語言程序設(shè)計(jì)這門課,一部分學(xué)生C語言沒有學(xué)好,導(dǎo)致對(duì)編程失去興趣和學(xué)習(xí)的信心,因此,對(duì)編程類課程也有消極抵觸情緒。
2.高職院校的學(xué)生普遍存在一個(gè)問題,即邏輯思維能力相對(duì)較差,這個(gè)問題在中學(xué)階段突出表現(xiàn)為數(shù)學(xué)成績不好,到了大學(xué)編程類課程依舊要依靠邏輯思維能力。因此,在邏輯思維能力沒有培養(yǎng)起來之前,學(xué)習(xí)編程類課程確實(shí)存在困難。
3.學(xué)生沒有找到有效的學(xué)習(xí)方法,導(dǎo)致學(xué)習(xí)過程中連續(xù)受挫,慢慢喪失學(xué)習(xí)的興趣和信心。
4.還有一小部分學(xué)習(xí)能力較強(qiáng)的學(xué)生在第二學(xué)年已經(jīng)確定了學(xué)習(xí)方向,將來并不打算從事軟件編程相關(guān)工作,這部分學(xué)生學(xué)習(xí)這門課程的熱情也不高。
針對(duì)大部分學(xué)生學(xué)習(xí)興趣不濃的現(xiàn)狀,當(dāng)務(wù)之急是如何激發(fā)學(xué)生學(xué)習(xí)的興趣,從而重建自信心?!芭d趣是最好的老師”,只有有了學(xué)習(xí)興趣才能在枯燥的學(xué)習(xí)過程中體會(huì)到樂趣。為了激發(fā)學(xué)生興趣,筆者采取了如下方法:
首先,筆者在開學(xué)的第一次課上強(qiáng)調(diào)“忘記C語言,一切從零開始”的觀點(diǎn),要求學(xué)生忘記所有關(guān)于C語言學(xué)習(xí)的不愉快的經(jīng)歷,盡量避免把Java語言與C語言進(jìn)行比較,所有在學(xué)生都在同一個(gè)起跑線上。筆者發(fā)現(xiàn),當(dāng)說出這句話的時(shí)候,很多學(xué)生很輕松地笑了。
很多面向?qū)ο蟪绦蛟O(shè)計(jì)的教材都會(huì)把Java和C語言進(jìn)行比較,很多教師講授Java課的時(shí)候也習(xí)慣于不時(shí)地把C語言扯進(jìn)來比較一下。我們先不說把兩門語言進(jìn)行比較是否有實(shí)際意義,殊不知,對(duì)于那些C語言本來就沒有學(xué)好的學(xué)生,這個(gè)比較對(duì)他們無異于“當(dāng)頭一棒”,不可避免地打擊了他們學(xué)習(xí)的信心。
其次,把以往學(xué)生的優(yōu)秀課程設(shè)計(jì)作品進(jìn)行展示,讓學(xué)生清楚地看到學(xué)習(xí)這門課程之后能做些什么,也就是明確學(xué)習(xí)的目標(biāo)。很多學(xué)生看了優(yōu)秀作品展示后很驚訝地問:我們也能做成這樣么?很顯然,他們已經(jīng)開始有興趣了。
有了學(xué)習(xí)的興趣就相當(dāng)于成功了一半,但是,如果沒有掌握學(xué)習(xí)方法,在學(xué)習(xí)過程中連續(xù)受挫,也會(huì)慢慢喪失學(xué)習(xí)的信心。因此,要學(xué)習(xí)好這門課程關(guān)鍵還要掌握正確有效的學(xué)習(xí)方法。筆者針對(duì)高職學(xué)生的特點(diǎn)和自己的學(xué)習(xí)經(jīng)驗(yàn)總結(jié)出以下幾點(diǎn)初學(xué)者學(xué)習(xí)編程語言的方法。
模仿法?;貞浺粋€(gè)嬰兒學(xué)習(xí)說話的過程,最初的嚶嚶學(xué)語不都是在模仿成人么?也許在他第一次模仿的時(shí)候并不理解某句話或者某個(gè)詞語的含義,但是,當(dāng)他得到對(duì)話的反饋之后慢慢就理解了其中的含義,從而學(xué)會(huì)了一句話或者一個(gè)詞語。其實(shí),編程語言也是一門語言,只不過是人和機(jī)器之間的語言。對(duì)于初學(xué)者,完全可以從簡單程序的模仿開始,可以模仿教師的演示程序,可以模仿教材或者參考書的程序,當(dāng)程序運(yùn)行后得到了結(jié)果,再去思考為什么會(huì)有這樣的結(jié)果,返回頭來再看看程序,往往能恍然大悟。
拼裝法。有些時(shí)候編寫程序并不一定要一行行地敲,可以適當(dāng)?shù)厥褂谩癱trl+c”、“ctrl+v”,把能完成某一特定功能的程序段“借用”到自己的程序當(dāng)中來。對(duì)于初學(xué)者,能將各個(gè)不同的程序段“拼裝”成一個(gè)完整的程序,并實(shí)現(xiàn)一定的功能,也是一個(gè)提高編程能力的過程。
記憶法。編程語言也是一門語言,因此,必須遵循一些規(guī)則,只有記住這些規(guī)則才能夠正確使用這門編程語言。這里所說的記憶并不等同于死記硬背,我們不提倡對(duì)程序死記硬背,但是,基本的語法卻是要銘記于心的,這樣寫程序的時(shí)候才不至于經(jīng)常犯一些低級(jí)錯(cuò)誤。
破壞法。筆者經(jīng)常在課堂上發(fā)給學(xué)生一些程序,讓他們?nèi)ァ捌茐摹?,比如:修改某個(gè)變量的數(shù)據(jù)類型或者修改數(shù)組的長度等等,讓學(xué)生觀察“破壞”后的程序能否編譯通過,或者運(yùn)行結(jié)果會(huì)有什么不同,然后,再返回頭來看程序,分析原因,得出結(jié)論。學(xué)生對(duì)這個(gè)方法頗有興趣,經(jīng)常把程序“破壞”得面目全非,按照他們的意愿把程序“破壞”后依然能正確地運(yùn)行得到正確的結(jié)果,這個(gè)過程是筆者和學(xué)生都很享受的。尤其是一些編程基礎(chǔ)不是很好的學(xué)生,看到這個(gè)方法馬上就來了興趣了,寫程序難,破壞程序可就簡單了。但是,筆者要求他們把程序破壞掉之后,要總結(jié)出一點(diǎn)東西,這樣才能在“破壞”后得到進(jìn)步。
每個(gè)知識(shí)點(diǎn)都盡量以具體任務(wù)開始,這樣學(xué)生腦海中有個(gè)清晰的目標(biāo),學(xué)習(xí)起來不會(huì)太盲目。舉個(gè)例子,在講授Java流程控制語句這部分內(nèi)容的時(shí)候,筆者以“猜數(shù)字游戲”這樣一個(gè)任務(wù)貫穿始終。之所以采用“猜數(shù)字游戲”作為任務(wù),主要因?yàn)檫@個(gè)游戲很有趣,很容易引起學(xué)生的興趣,同時(shí)任務(wù)的分解和擴(kuò)展更加貼近知識(shí)點(diǎn)。如圖1所示,是整個(gè)任務(wù)的擴(kuò)展過程,每次擴(kuò)展都包含新的知識(shí)點(diǎn)。若把整個(gè)任務(wù)一次性交給學(xué)生,學(xué)生不可避免地會(huì)有無從下手的感覺。我們按照知識(shí)點(diǎn)把任務(wù)分解,逐步擴(kuò)展,這樣學(xué)生一步步地完成整個(gè)任務(wù)之后,玩自己做的游戲會(huì)非常有成就感。有了成就感之后,學(xué)習(xí)的興趣就更濃了,這樣會(huì)產(chǎn)生一種學(xué)習(xí)過程的良性循環(huán)。
通過對(duì)教學(xué)方法的調(diào)整,教學(xué)效果明顯提高了,學(xué)生學(xué)習(xí)的興趣也濃了。主要表現(xiàn)在:學(xué)生課堂上提出的問題越來越多;原來對(duì)編程類課程沒興趣的學(xué)生也被這種氛圍感染了,課堂上基本能夠跟著教師的思路;個(gè)別學(xué)習(xí)能力強(qiáng)的學(xué)生課下能夠積極看書,做超前學(xué)習(xí)或者自主學(xué)習(xí)相關(guān)的課外知識(shí),使筆者也品嘗到了“教學(xué)相長”的樂趣。
[1]姜大源.當(dāng)代德國職業(yè)教育主流教學(xué)思想研究[M].北京:清華大學(xué)出版社,2007.
[2]溫家寶.大力發(fā)展中國特色的職業(yè)教育——在全國職業(yè)教育工作會(huì)議上的講話[J].中國職業(yè)技術(shù)教育,2005,(34).
[3]王偉廉.高校課程體系現(xiàn)代化的基本特征[J].教育發(fā)展研究,1997,(4).
G712
A
1672-5727(2010)08-0080-02
張立涓(1977—),女,黑龍江海倫人,碩士,深圳職業(yè)技術(shù)學(xué)院計(jì)算機(jī)應(yīng)用工程系講師,研究方向?yàn)橛?jì)算機(jī)網(wǎng)絡(luò)軟件編程。