齊新軍 宗明魁
摘 要:C++程序設(shè)計(jì)課程教學(xué)改革的方法變化多樣,但提高教學(xué)質(zhì)量與培養(yǎng)學(xué)生實(shí)踐能力是不變的主題。本文通過在教學(xué)過程中改變教學(xué)模式、教學(xué)方法,同時(shí)加強(qiáng)實(shí)踐環(huán)節(jié)訓(xùn)練。指出以培養(yǎng)學(xué)生實(shí)踐能力為核心的程序設(shè)計(jì)教學(xué)思想。
關(guān)鍵詞:C++程序設(shè)計(jì);教學(xué)模式;實(shí)踐教學(xué);能力培養(yǎng)
1 引言
《C++程序設(shè)計(jì)》課程是高校計(jì)算機(jī)科學(xué)類及相關(guān)專業(yè)必修的專業(yè)基礎(chǔ)課程,在計(jì)算機(jī)科學(xué)的知識體系結(jié)構(gòu)中占據(jù)重要的地位。各高校在制訂教學(xué)計(jì)劃時(shí),為該課程分配的學(xué)時(shí)大都在84~110學(xué)時(shí)之間,理論課與實(shí)踐課的比例約為2:1。其教學(xué)目標(biāo)是:使學(xué)生理解C++語言的數(shù)據(jù)類型、各種運(yùn)算及語句結(jié)構(gòu)等,熟練掌握程序設(shè)計(jì)的基本方法和技能,逐步形成正確、規(guī)范、科學(xué)的程序設(shè)計(jì)思想,能夠靈活運(yùn)用C++語言設(shè)計(jì)和實(shí)現(xiàn)解決問題的程序,并為數(shù)據(jù)結(jié)構(gòu)、軟件工程等后繼課程的學(xué)習(xí)奠定基礎(chǔ)。對于計(jì)算機(jī)學(xué)科領(lǐng)域的學(xué)生,C++作為他們學(xué)習(xí)的第一門計(jì)算機(jī)高級語言,理論與實(shí)踐俱強(qiáng),掌握和運(yùn)用得好壞直接影響了他們對整個(gè)學(xué)科知識體系的理解,甚至體現(xiàn)了他們的專業(yè)素質(zhì)和能力。
2 課堂教學(xué)改革
2.1 轉(zhuǎn)變教學(xué)模式
著名學(xué)者楊振寧指出,中國傳統(tǒng)的教學(xué)方法重演繹、推理,按部就班,嚴(yán)格認(rèn)真,其效果是基礎(chǔ)扎實(shí),但缺少創(chuàng)新意識;而美國的教學(xué)方法重歸納、分析和綜合,是一種“體驗(yàn)式”的學(xué)習(xí)方法,其效果是獨(dú)立思考能力和創(chuàng)造能力強(qiáng),但根基不夠扎實(shí)。中外兩種教學(xué)模式各有其優(yōu)點(diǎn)和不足,結(jié)合課程的實(shí)際情況,我們采取何克抗先生提出的“主導(dǎo)——主體”雙主式的教學(xué)模式,不片面強(qiáng)調(diào)教師或?qū)W生單方面的作用,這樣既能發(fā)揮教師的主導(dǎo)作用,又能充分體現(xiàn)學(xué)生的認(rèn)知主體作用。要從根本上轉(zhuǎn)變教學(xué)模式,要將傳統(tǒng)的以培養(yǎng)“知識型”人才為目標(biāo)的教學(xué)模式向培養(yǎng)“應(yīng)用型”、“創(chuàng)新型”人才的模式轉(zhuǎn)變。
2.2 轉(zhuǎn)變教學(xué)方法
少時(shí)多課,即總學(xué)分減少和學(xué)時(shí)縮減是當(dāng)前高等教育培養(yǎng)方案調(diào)整的一個(gè)基本趨勢。那么,如何在這種情況下使C++程序設(shè)計(jì)課程的質(zhì)量在少學(xué)時(shí)下得到保證,同時(shí)切實(shí)培養(yǎng)學(xué)生的實(shí)踐能力呢?
在教學(xué)方法上,我們提倡多元化,主要采用多媒體教學(xué)方式和互動(dòng)式教學(xué)方式與傳統(tǒng)教學(xué)方式相融合,改變以往“填鴨式的教學(xué)法模式”、“死搬課本的應(yīng)試教育”等教學(xué)方法。多媒體教學(xué)方式能夠明確教學(xué)目標(biāo),確定和充實(shí)教學(xué)內(nèi)容,化靜為動(dòng),使學(xué)生在動(dòng)畫的刺激下,始終保持著濃厚的學(xué)習(xí)興趣;變難為易,把一些看不到的部分展現(xiàn)在學(xué)生面前,既突破了教學(xué)中的重點(diǎn)和難點(diǎn),又提高了學(xué)生的學(xué)習(xí)興趣。互動(dòng)式教學(xué)方式要求我們教師從主講者轉(zhuǎn)變?yōu)閷W(xué)生學(xué)習(xí)活動(dòng)的設(shè)計(jì)者和指導(dǎo)者,教師把以教為主轉(zhuǎn)變?yōu)閷W(xué)生以學(xué)為主。通過在講解過程中為學(xué)生設(shè)置問題,引導(dǎo)學(xué)生討論,啟發(fā)學(xué)生思考,然后讓學(xué)生各抒己見,最后教師比較優(yōu)劣、歸納總結(jié)。特別是在課堂上教師現(xiàn)場編程,使學(xué)生能夠參與到程序的編輯和調(diào)試過程中,能夠跟隨教師共同解決問題,獲得正確的結(jié)果。這種教學(xué)方式增強(qiáng)了學(xué)生的參與意識和興趣,使學(xué)生由被動(dòng)學(xué)習(xí)轉(zhuǎn)變?yōu)橹鲃?dòng)學(xué)習(xí)。另外,將一些典型算法、實(shí)際的項(xiàng)目案例、完整的生活案例采用案例式教學(xué)方式講解,會(huì)讓學(xué)生覺得C++語言課程是一門非常有用的課程。
2.3 轉(zhuǎn)變教學(xué)內(nèi)容
由于計(jì)算機(jī)技術(shù)的迅速發(fā)展,我們目前采用的教材雖然作為初學(xué)者學(xué)習(xí)已經(jīng)足夠,但是有些內(nèi)容尚顯陳舊,在個(gè)別例程中仍然存在著過時(shí)甚至錯(cuò)誤的編程思想。因此在教學(xué)內(nèi)容上,我們一方面要做到充分利用好現(xiàn)有教材,另一方面要向?qū)W生及時(shí)說明教材中的不足之處,同時(shí)還要有針對性地引進(jìn)相關(guān)的的最新內(nèi)容,通過比較,讓學(xué)生開闊思維,深刻體會(huì)數(shù)據(jù)結(jié)構(gòu)及算法的魅力。
3 實(shí)踐教學(xué)改革
C++程序設(shè)計(jì)是一門實(shí)踐性很強(qiáng)的課程,我們在重視基礎(chǔ)、理論知識講授的同時(shí),必須同時(shí)加強(qiáng)實(shí)踐環(huán)節(jié)的訓(xùn)練。學(xué)生實(shí)踐能力的培養(yǎng)是C++程序設(shè)計(jì)課程教學(xué)的核心。實(shí)踐環(huán)節(jié)主要分為課程實(shí)驗(yàn)和課程設(shè)計(jì)(大作業(yè))兩個(gè)層面。
3.1 課程實(shí)驗(yàn)
課程實(shí)驗(yàn)主要檢查學(xué)生對基本知識點(diǎn)的理解和掌握情況,側(cè)重基礎(chǔ)和單元知識點(diǎn)的強(qiáng)化和培訓(xùn)。采取的主要措施有:根據(jù)課堂講授的實(shí)例,恰當(dāng)設(shè)置實(shí)驗(yàn),要求學(xué)生事先預(yù)習(xí),編好程序填寫實(shí)驗(yàn)報(bào)告再進(jìn)實(shí)驗(yàn)室,提高實(shí)驗(yàn)課的效率,然后整理實(shí)驗(yàn)結(jié)果,使學(xué)生逐步從模仿轉(zhuǎn)向設(shè)計(jì)。實(shí)驗(yàn)過程中指導(dǎo)教師一方面要注意培養(yǎng)學(xué)生的規(guī)范化及標(biāo)準(zhǔn)化素質(zhì),即從小事入手,因?yàn)橐粋€(gè)高質(zhì)量的程序需要規(guī)范的命名、科學(xué)的編碼風(fēng)格及必要的注釋;另一方面要及時(shí)發(fā)現(xiàn)問題及時(shí)解決問題。實(shí)驗(yàn)課后必須做歸納總結(jié),對比同樣的問題,不同的解決方法所對應(yīng)的算法在時(shí)間及空間上有不同的性能及效率,使學(xué)生能了解這種差異,為后續(xù)數(shù)據(jù)結(jié)構(gòu)課程的學(xué)習(xí)做好鋪墊。
3.2 課程設(shè)計(jì)
課程設(shè)計(jì)主要培養(yǎng)和鍛煉學(xué)生綜合應(yīng)用知識的能力和技巧,安排一個(gè)有完整系統(tǒng)功能需求的任務(wù),要求學(xué)生綜合應(yīng)用所學(xué)的專業(yè)知識和實(shí)驗(yàn)技能,自主查閱參考資料,分析、設(shè)計(jì)、編碼和調(diào)試完成自己的設(shè)計(jì)并撰寫一份符合模板要求的完整的實(shí)驗(yàn)報(bào)告。在整個(gè)設(shè)計(jì)過程中,教師既要給予學(xué)生適當(dāng)?shù)闹笇?dǎo),又要充分調(diào)動(dòng)學(xué)生的積極性與主動(dòng)性,給學(xué)生一個(gè)開放的空間。對于課程設(shè)計(jì)做得優(yōu)秀的學(xué)生,要善于鼓勵(lì),讓他們親自進(jìn)行講解,既培養(yǎng)他們的表達(dá)能力,也讓其他學(xué)生開拓了思路。
4 結(jié)論
C++程序設(shè)計(jì)課程教學(xué)改革的方法變化多樣,但提高教學(xué)質(zhì)量與培養(yǎng)學(xué)生實(shí)踐能力是不變的主題。通過近十年在《C++程序設(shè)計(jì)》課程教學(xué)過程中的改革,我們在教學(xué)模式、教學(xué)方法上作了一些有益的嘗試。學(xué)生通過實(shí)踐環(huán)節(jié)的訓(xùn)練在程序設(shè)計(jì)能力上有了顯著的提高。
參考文獻(xiàn)
[1]何克抗.關(guān)于網(wǎng)絡(luò)教學(xué)模式與傳統(tǒng)教學(xué)模式的思考[J].電化教育研究,1998(1).
[2]陳天,黃敏,杜卿.C++語言教學(xué)的多層次改革. 全國高校軟件工程專業(yè)教育年會(huì)論文集(2007).
[3]何典.以實(shí)踐能力培養(yǎng)為核心的程序設(shè)計(jì)課程體系[J].中國科技信息,2007(4).
作者簡介:齊新軍,女,碩士,講師;宗明魁,男,碩士,高級工程師。