馬洪霞
(北京林業(yè)大學(xué)電子系,北京 100083)
“C++程序設(shè)計(jì)”是一門(mén)實(shí)踐性很強(qiáng)的課程,單純的有限,一般課程學(xué)時(shí)30~40,課堂教學(xué)一般只能夠講授基礎(chǔ)知識(shí),很難使學(xué)生真正掌握C++語(yǔ)言的精髓。網(wǎng)絡(luò)課堂教學(xué)不能實(shí)時(shí)互動(dòng),教學(xué)效果差,只能作為補(bǔ)充?,F(xiàn)今的項(xiàng)目教學(xué)法被認(rèn)為是較為適合程序設(shè)計(jì)類(lèi)課程的教學(xué)方法,并不適合所有學(xué)生[1,2]。為此,筆者提出課堂教學(xué)應(yīng)該與課外教學(xué)相結(jié)合,利用各種課外項(xiàng)目對(duì)部分對(duì)程序設(shè)計(jì)感興趣的學(xué)生進(jìn)行課外教學(xué),進(jìn)而達(dá)到培養(yǎng)創(chuàng)新型人才的目的。
由于學(xué)生在有限的時(shí)間內(nèi)難以對(duì)所有的課程都鉆研深透,筆者將教學(xué)可以分如下兩步進(jìn)行。第一步是課堂教學(xué),在教學(xué)大綱規(guī)定學(xué)時(shí)內(nèi)對(duì)完成對(duì)全體學(xué)生的基礎(chǔ)教學(xué);第二步是課外教學(xué),重點(diǎn)培養(yǎng)創(chuàng)新型人才。我們結(jié)合各種創(chuàng)新計(jì)劃項(xiàng)目與科研項(xiàng)目進(jìn)行精英教學(xué),使學(xué)生深入透徹的掌握一門(mén)計(jì)算機(jī)語(yǔ)言,使其畢業(yè)后能夠獨(dú)立進(jìn)行程序設(shè)計(jì)。課堂教學(xué)與課外教學(xué)既要相互獨(dú)立,又要保持連貫性。
為了闡明本課程的教學(xué)方法和教學(xué)過(guò)程,我們以“一個(gè)小型公司的人員信息管理系統(tǒng)”為例進(jìn)行說(shuō)明[3]。表1所示即為此例所涉及的知識(shí)結(jié)構(gòu)及其教學(xué)過(guò)程。
表1 教學(xué)過(guò)程示例
1)課堂教學(xué)
課堂教學(xué)的實(shí)施對(duì)象是全體學(xué)生,教學(xué)內(nèi)容為:基本概念、語(yǔ)法知識(shí)、驗(yàn)證性實(shí)驗(yàn)和綜合訓(xùn)練實(shí)驗(yàn),使學(xué)生對(duì)C++語(yǔ)言有一個(gè)全面認(rèn)識(shí)。由于C++語(yǔ)言的實(shí)踐性很強(qiáng),所以課堂教學(xué)適宜采用案例式教學(xué)和任務(wù)驅(qū)動(dòng)式教學(xué),但是案例或者任務(wù)的難度要適中,不能讓學(xué)生感到無(wú)從下手,望而生畏。實(shí)驗(yàn)以驗(yàn)證性實(shí)驗(yàn)為主,占到總實(shí)驗(yàn)學(xué)時(shí)的80%,實(shí)施對(duì)象為全體學(xué)生。
綜合訓(xùn)練實(shí)驗(yàn)為選做實(shí)驗(yàn),占20%,適合于成績(jī)優(yōu)秀的學(xué)生。課堂教學(xué)內(nèi)容包括類(lèi)的聲明、靜態(tài)成員、派生類(lèi)及虛函數(shù)等內(nèi)容。這些基本內(nèi)容是“C++程序設(shè)計(jì)”學(xué)習(xí)的重點(diǎn),蘊(yùn)含著面向?qū)ο蟮姆椒岸鄳B(tài)等重要內(nèi)容,也可以為以后學(xué)習(xí)其他面向?qū)ο蟮恼Z(yǔ)言打下基礎(chǔ)。
2)課外教學(xué)
課外教學(xué)的實(shí)施對(duì)象是對(duì)本課程有濃厚興趣的學(xué)生,教學(xué)內(nèi)容包括理論和互動(dòng)兩部分?;?dòng)實(shí)練教學(xué),可以讓學(xué)生真正的深入理解C++語(yǔ)言,進(jìn)而對(duì)語(yǔ)言的運(yùn)用有所創(chuàng)新。課外教學(xué)首先是理論內(nèi)容,是與項(xiàng)目密切相關(guān)的知識(shí)點(diǎn),為學(xué)生順利地融入到項(xiàng)目角色打好基礎(chǔ)。然后是互動(dòng)內(nèi)容,在項(xiàng)目進(jìn)行過(guò)程中進(jìn)行算法以及程序設(shè)計(jì)技巧的輔導(dǎo)。
在我們的例子中,容器類(lèi)與MFC等知識(shí)點(diǎn)難度較大,但是對(duì)于開(kāi)展項(xiàng)目中有重要作用。教師將這部分內(nèi)容放在課外教學(xué)的理論部分進(jìn)行講述,針對(duì)本項(xiàng)目的應(yīng)用選取特定的內(nèi)容進(jìn)行闡述。由于學(xué)生此時(shí)學(xué)習(xí)具有很大的主動(dòng)性,所以學(xué)習(xí)效率也會(huì)很高。項(xiàng)目開(kāi)展以后,即進(jìn)入互動(dòng)部分。教師要開(kāi)展程序結(jié)構(gòu)、算法、效率優(yōu)化等內(nèi)容的啟發(fā)式指導(dǎo),協(xié)助學(xué)生思考更高級(jí)的問(wèn)題,使學(xué)生盡力提出自己的創(chuàng)新性的觀(guān)點(diǎn)。
3)互動(dòng)教學(xué)中需要注意的問(wèn)題
在互動(dòng)教學(xué)過(guò)程中,教師在輔導(dǎo)過(guò)程中不僅要對(duì)已成型方法的優(yōu)缺點(diǎn)進(jìn)行全面的講解,還要對(duì)新方法新觀(guān)點(diǎn)進(jìn)行介紹,引導(dǎo)學(xué)生綜合各種方法的優(yōu)點(diǎn),力圖創(chuàng)造出新的更好的方法。教師的角色是方向指引者,引導(dǎo)學(xué)生進(jìn)行創(chuàng)新。當(dāng)學(xué)生思路陷入囹圄時(shí),要引入新的角度,幫助學(xué)生更換角度思考。教師在與學(xué)生的互動(dòng)過(guò)程中,應(yīng)該充分鼓勵(lì)學(xué)生大膽進(jìn)行新的嘗試,使其成為敢于創(chuàng)新的程序設(shè)計(jì)人才。
本文針對(duì)各高校信息類(lèi)非計(jì)算機(jī)專(zhuān)業(yè)“C++程序設(shè)計(jì)”課時(shí)有限的特點(diǎn),提出利用各種課外項(xiàng)目對(duì)部分學(xué)生進(jìn)行課外教學(xué)進(jìn)而達(dá)到培養(yǎng)創(chuàng)新型人才的目的。教師在課外教學(xué)實(shí)施過(guò)程中應(yīng)該注意將自己擺在引路者的位置,充分鼓勵(lì)學(xué)生進(jìn)行創(chuàng)新。
筆者通過(guò)教學(xué)實(shí)踐發(fā)現(xiàn),本文提出的教學(xué)方法對(duì)培養(yǎng)創(chuàng)新型人才很有幫助。實(shí)施課外教學(xué)的學(xué)生,能熟練掌握C++語(yǔ)言,有一部分學(xué)生能夠提出自己的算法,并很好地完成項(xiàng)目規(guī)定的任務(wù)。
[1] 劉松青.構(gòu)建“Java面向?qū)ο蟪绦蛟O(shè)計(jì)”實(shí)踐教學(xué)體系[J].長(zhǎng)沙:實(shí)踐教學(xué),2009(2):8-10
[2] 張麗.項(xiàng)目教學(xué)法在面向?qū)ο蟪绦蛟O(shè)計(jì)課程教學(xué)中的應(yīng)用[J].北京:計(jì)算機(jī)教育,2010(10):92-94
[3] 鄭莉.C++語(yǔ)言程序設(shè)計(jì)[M].北京:清華大學(xué)出版社,2005:196-197