李秉璋 羅 燁 景征駿 黃海軍
摘要:“面向?qū)ο蟪绦蛟O(shè)計(jì)”是計(jì)算機(jī)及相關(guān)專(zhuān)業(yè)重要的專(zhuān)業(yè)課。本文在分析課程實(shí)踐環(huán)節(jié)中存在的問(wèn)題后,從認(rèn)識(shí)論的角度出發(fā),論述了課程設(shè)計(jì)的目的,重點(diǎn)闡述了旨在提高學(xué)生實(shí)踐能力的課程改革與探索的內(nèi)容、方法、手段,以及課程實(shí)踐環(huán)節(jié)改革后收到的效果。
關(guān)鍵詞:面向?qū)ο?程序設(shè)計(jì);實(shí)踐教學(xué);精品課程
中圖分類(lèi)號(hào):G642 文獻(xiàn)標(biāo)識(shí)碼:B
1引言
“面向?qū)ο蟪绦蛟O(shè)計(jì)”課程是高校計(jì)算機(jī)科學(xué)與技術(shù)專(zhuān)業(yè)的一門(mén)重要的專(zhuān)業(yè)基礎(chǔ)課。也是“數(shù)據(jù)結(jié)構(gòu)”、“編譯原理”等專(zhuān)業(yè)課的先修課程,在整個(gè)專(zhuān)業(yè)的教學(xué)體系中占有非常重要的地位。該課程的授課對(duì)象是大學(xué)一年級(jí)的學(xué)生,他們有一定的邏輯思維能力,基本掌握面向過(guò)程的程序設(shè)計(jì)方法。但對(duì)面向?qū)ο笏枷敕椒ǖ某橄笮院蛷?fù)雜性,面向?qū)ο笳Z(yǔ)言C++本身的高難度,使之成為一門(mén)比較難以學(xué)習(xí)和掌握的課程,學(xué)生學(xué)習(xí)效果不佳,應(yīng)用能力不強(qiáng)。因此如何提高學(xué)生面向?qū)ο蠹夹g(shù)的應(yīng)用能力,提高教學(xué)效果是本課程教學(xué)改革主要探索研究的內(nèi)容。
“面向?qū)ο蟪绦蛟O(shè)計(jì)”在2007年被列為我校精品課程,課程建設(shè)目標(biāo)之一就是分析課程現(xiàn)狀,找出問(wèn)題結(jié)癥,改革實(shí)踐教學(xué)方法、手段、內(nèi)容,切實(shí)提高學(xué)生的“動(dòng)手能力”——運(yùn)用面向?qū)ο蠹夹g(shù)解決實(shí)際問(wèn)題的能力。
2存在問(wèn)題
我校計(jì)算機(jī)科學(xué)與技術(shù)專(zhuān)業(yè)從2002年開(kāi)始講授面向?qū)ο笳Z(yǔ)言——C++。多年的教學(xué)中,主要存在著以下問(wèn)題:
(1) 學(xué)生有面向過(guò)程的程序設(shè)計(jì)能力,但較難接受面向?qū)ο蟮乃枷牒头椒?往往在C++的開(kāi)發(fā)環(huán)境中,設(shè)計(jì)出純面向過(guò)程的程序。
(2) 缺乏歸納、總結(jié)能力,獨(dú)立分析問(wèn)題、解決問(wèn)題的能力。特別缺乏大程序的設(shè)計(jì)、調(diào)試能力。
(3) 現(xiàn)有的實(shí)驗(yàn)教材和指導(dǎo)書(shū)中內(nèi)容過(guò)多的驗(yàn)證性實(shí)驗(yàn),嚴(yán)重地影響了學(xué)生自主學(xué)習(xí)、創(chuàng)新提高能力的培養(yǎng)。課程前后實(shí)驗(yàn)缺乏必要聯(lián)系,缺少計(jì)算機(jī)解題的邏輯思維訓(xùn)練。這些問(wèn)題勢(shì)必降低了課程的教學(xué)效果,影響了學(xué)生應(yīng)用能力和創(chuàng)新能力的提高。
3實(shí)踐教學(xué)目的
站在認(rèn)識(shí)論的角度看,面向?qū)ο笫且环N認(rèn)識(shí)客觀世界的認(rèn)知方法學(xué),同時(shí)也是一種解決問(wèn)題的思維模式。面向?qū)ο罄碚擉w系將對(duì)象作為需求分析和系統(tǒng)設(shè)計(jì)的核心和主體,在此基礎(chǔ)上,引用科學(xué)方法論中的分類(lèi)思想,將相似的一組對(duì)象抽象為類(lèi),采用各種手段將相似的類(lèi)組織起來(lái),實(shí)現(xiàn)問(wèn)題空間到解空間的映射。課程教學(xué)中存在的上述問(wèn)題,體現(xiàn)在學(xué)生身上,根源在教學(xué)上。我們的實(shí)踐教學(xué)不能再僅僅教會(huì)學(xué)生如何套用語(yǔ)言的語(yǔ)法,依樣畫(huà)葫蘆驗(yàn)證教材和課堂講課內(nèi)容,而是應(yīng)該包括如下兩個(gè)方面的教學(xué)目的。
3.1提高學(xué)生對(duì)面向?qū)ο笏枷?、方法的理?全面掌握面向?qū)ο蟮募夹g(shù),并熟練應(yīng)用之
作為面向?qū)ο蟪绦蛟O(shè)計(jì)這門(mén)課程,它有著自身完備的知識(shí)體系以及教學(xué)線索。其中蘊(yùn)涵這樣一條知識(shí)主線:提出問(wèn)題→建立類(lèi)與對(duì)象→運(yùn)用對(duì)象解決問(wèn)題→對(duì)對(duì)象的改進(jìn)、進(jìn)化→建立繼承機(jī)制→產(chǎn)生類(lèi)族→建立多態(tài)機(jī)制→類(lèi)的復(fù)用→類(lèi)的模版技術(shù)→對(duì)象對(duì)消息的響應(yīng)機(jī)制→對(duì)象的異常處理機(jī)制。課程的教學(xué)任務(wù)就是要不斷地灌輸上述知識(shí)主線,實(shí)踐教學(xué)的任務(wù)就是將現(xiàn)實(shí)世界的類(lèi)和對(duì)象的概念源源不斷地引入到實(shí)驗(yàn)中,用面向?qū)ο蟮恼Z(yǔ)言去描述,使用對(duì)象的方法去解決實(shí)際問(wèn)題。
3.2對(duì)課程內(nèi)容總結(jié)歸納,使學(xué)生理解C++語(yǔ)言內(nèi)在規(guī)律,提高自主創(chuàng)新能力
C++中的知識(shí)點(diǎn)、規(guī)則眾多、繁雜,平時(shí)單個(gè)實(shí)驗(yàn)只能包含一至兩個(gè)知識(shí)點(diǎn)。實(shí)踐教學(xué)要在單個(gè)簡(jiǎn)單實(shí)驗(yàn)的基礎(chǔ)上,適時(shí)進(jìn)行總結(jié)、歸納,揭示規(guī)律,從而提高學(xué)生自主學(xué)習(xí)、提高創(chuàng)新的能力。例如在掌握了類(lèi)的構(gòu)造函數(shù)、派生類(lèi)和組合類(lèi)的構(gòu)造函數(shù)、復(fù)制構(gòu)造函數(shù)、深復(fù)制和淺復(fù)制等知識(shí)點(diǎn)后,要求學(xué)生總結(jié)異同點(diǎn),找出內(nèi)在規(guī)律,并在課外實(shí)驗(yàn)題中將這些知識(shí)點(diǎn)串聯(lián)起來(lái),形成一個(gè)綜合性、設(shè)計(jì)性實(shí)驗(yàn)。
4改革與探索
在課程的教學(xué)中堅(jiān)持實(shí)踐教學(xué)不斷線,將實(shí)踐教學(xué)貫穿于課堂內(nèi)外。一方面,教師要發(fā)揮自己的主導(dǎo)作用,想方設(shè)法去激發(fā)學(xué)生的學(xué)習(xí)熱情;另一方面,根據(jù)學(xué)生能力的不同,充分調(diào)動(dòng)學(xué)生的主觀能動(dòng)性,挖掘他們學(xué)習(xí)上的潛力,讓他們感受自己獨(dú)立解決問(wèn)題的樂(lè)趣,提高他們的動(dòng)手能力和分析問(wèn)題、解決問(wèn)題的能力。幾年來(lái),我們對(duì)實(shí)踐教學(xué)進(jìn)行了以下幾個(gè)方面的改革。
4.1建立三個(gè)層次的課程實(shí)踐教學(xué)結(jié)構(gòu),重視應(yīng)用能力的培養(yǎng)
C++知識(shí)體系龐大,內(nèi)容繁雜,教學(xué)大綱規(guī)定要求掌握的知識(shí)點(diǎn)、技術(shù)也很多。為此我們建立了由三個(gè)層次實(shí)驗(yàn)內(nèi)容組成的實(shí)踐教學(xué)結(jié)構(gòu),著力提升所有學(xué)生的語(yǔ)言應(yīng)用能力。這三個(gè)層次分別是:
(1) 課內(nèi)實(shí)驗(yàn),該類(lèi)實(shí)驗(yàn)主要涉及課程的相關(guān)知識(shí)點(diǎn)。實(shí)驗(yàn)?zāi)康氖鞘箤W(xué)生理解、鞏固并掌握理論教學(xué)的內(nèi)容。要求所有學(xué)生都必須完成。
(2) 課程設(shè)計(jì),主要是設(shè)計(jì)與開(kāi)發(fā)性實(shí)驗(yàn)。該類(lèi)實(shí)驗(yàn)以“任務(wù)”或“課題”形式提出實(shí)驗(yàn)要求和具體的實(shí)驗(yàn)結(jié)果,學(xué)生以組為單位進(jìn)行設(shè)計(jì)。要求掌握實(shí)驗(yàn)所涉及到的知識(shí),通過(guò)綜合利用這些知識(shí)來(lái)設(shè)計(jì)、開(kāi)發(fā)并最終完成課程設(shè)計(jì)項(xiàng)目。
(3) 各類(lèi)科研,對(duì)部分學(xué)習(xí)能力強(qiáng)的學(xué)生,請(qǐng)他們參與課外研究或教師科研,重在培養(yǎng)學(xué)生的研究能力與創(chuàng)新意識(shí)。
4.2改革教學(xué)內(nèi)容,強(qiáng)化面向?qū)ο笏枷敕椒ǖ膫魇?/p>
傳統(tǒng)的語(yǔ)言教學(xué)方法總是從面向過(guò)程的技術(shù)開(kāi)始講解,再講授化面向?qū)ο蠓椒?。在教學(xué)改革中,我們從課程第一節(jié)課開(kāi)始進(jìn)入“面向?qū)ο蟆钡氖澜?讓學(xué)生接受面向?qū)ο蟮乃枷?理解接受面向?qū)ο蟮母拍?不斷訓(xùn)練學(xué)生從客觀世界事物中抽象類(lèi)的能力。例如一般教材是先學(xué)習(xí)結(jié)構(gòu),后學(xué)習(xí)類(lèi)與對(duì)象。我們?cè)诮虒W(xué)中相反,先學(xué)習(xí)類(lèi)與對(duì)象,再涉及結(jié)構(gòu)(學(xué)習(xí)結(jié)構(gòu)也只是因?yàn)楹罄m(xù)課程“MFC的應(yīng)用”中存在結(jié)構(gòu)類(lèi)型)。學(xué)生的第一個(gè)實(shí)驗(yàn)就是類(lèi)實(shí)驗(yàn)。
4.3重視實(shí)驗(yàn)內(nèi)容的設(shè)計(jì),精心設(shè)計(jì)實(shí)驗(yàn)內(nèi)容
我們發(fā)現(xiàn)不少實(shí)驗(yàn)指導(dǎo)書(shū)的實(shí)驗(yàn)內(nèi)容設(shè)計(jì)不科學(xué),實(shí)驗(yàn)設(shè)計(jì)缺乏層次性和連續(xù)性,只注重單個(gè)實(shí)驗(yàn),沒(méi)有重視前后知識(shí)的積累、遷移。驗(yàn)證性實(shí)驗(yàn)多于設(shè)計(jì)性、綜合性實(shí)驗(yàn)。使得學(xué)生實(shí)驗(yàn)后的收獲也僅是只見(jiàn)樹(shù)木,不見(jiàn)森林。為此我們結(jié)合課程建設(shè)目標(biāo)和專(zhuān)業(yè)人才培養(yǎng)方案,精心設(shè)計(jì)編制了有利于能力培養(yǎng)的實(shí)驗(yàn)教材。其中8個(gè)實(shí)驗(yàn)(見(jiàn)表1)屬于第一層次的實(shí)踐。8個(gè)實(shí)驗(yàn)涵蓋了C++主要技術(shù),在概念、內(nèi)容上前后緊密銜接,有適度覆蓋,后一個(gè)實(shí)驗(yàn)解決前一個(gè)實(shí)驗(yàn)中存在的不足。全部實(shí)驗(yàn)結(jié)束形成一個(gè)包含C++主要知識(shí)點(diǎn)和技術(shù)的簡(jiǎn)單應(yīng)用程序。實(shí)際教學(xué)效果證明,學(xué)生通過(guò)這樣的實(shí)驗(yàn),面向?qū)ο蟪绦蛟O(shè)計(jì)能力大大提高。
同時(shí)實(shí)驗(yàn)指導(dǎo)書(shū)對(duì)實(shí)驗(yàn)內(nèi)容進(jìn)行了拓展和延伸,同時(shí)開(kāi)設(shè)了大量的選作實(shí)驗(yàn),使得學(xué)生在課外,能根據(jù)各自能力、愛(ài)好選做,以此來(lái)拓展思維,培養(yǎng)創(chuàng)新能力。
在課程結(jié)束后,增加了2周“面向?qū)ο蟪绦蛟O(shè)計(jì)”課程設(shè)計(jì)。這是第二層次的實(shí)踐。課程設(shè)計(jì)是一個(gè)研究性學(xué)習(xí)的過(guò)程。在指導(dǎo)老師的輔導(dǎo)下,學(xué)生2~3人為一組,以項(xiàng)目開(kāi)發(fā)的形式,完成一個(gè)包含C++主要技術(shù)、功能相對(duì)完整的應(yīng)用程序。要求學(xué)生完成相應(yīng)的項(xiàng)目需求分析、設(shè)計(jì)、調(diào)試、運(yùn)行,撰寫(xiě)課程設(shè)計(jì)報(bào)告。進(jìn)一步增強(qiáng)學(xué)生獨(dú)立分析問(wèn)題、解決問(wèn)題的能力。
在教學(xué)過(guò)程中,注意發(fā)現(xiàn)學(xué)習(xí)熱情高,創(chuàng)新能力強(qiáng)的學(xué)生,及時(shí)吸引他們加入教師的科研團(tuán)隊(duì),參與教師的科研課題。組織引導(dǎo)他們參加學(xué)校、省市各類(lèi)學(xué)生科研活動(dòng)、程序設(shè)計(jì)競(jìng)賽等。這就是第三層次的實(shí)踐。
4.4改進(jìn)實(shí)踐教學(xué)的考核方法,注重創(chuàng)新能力的培養(yǎng)
首先鼓勵(lì)學(xué)生采用“奇特的”、“五花八門(mén)”不同算法進(jìn)行實(shí)驗(yàn),發(fā)揮學(xué)生創(chuàng)造性思維,培養(yǎng)學(xué)生的創(chuàng)新能力。在成績(jī)?cè)u(píng)定上,不拘泥于程序是否完全正確,而是更注重是否采用了合理的技術(shù)、程序設(shè)計(jì)是否新穎、獨(dú)到。事實(shí)上不少學(xué)生設(shè)計(jì)的算法很有新意,設(shè)計(jì)的程序很獨(dú)特。
在課程設(shè)計(jì)中則著重考察學(xué)生分析問(wèn)題、解決問(wèn)題的能力、科研能力和工程能力是否得到鍛煉。通過(guò)檢查課題設(shè)計(jì)內(nèi)容,了解學(xué)生是否采用了面向?qū)ο蟮闹饕夹g(shù)、這些技術(shù)的應(yīng)用是否合理;通過(guò)提問(wèn)了解學(xué)生通過(guò)課程設(shè)計(jì)對(duì)理論教學(xué)中的內(nèi)容是否有更深的理解和體會(huì),對(duì)課程設(shè)計(jì)中遇到的各類(lèi)問(wèn)題采用了什么方法加以解決。
5改革的效果
課程組在“面向?qū)ο蟪绦蛟O(shè)計(jì)”課程教學(xué)過(guò)程中堅(jiān)持改革,從教學(xué)思路,教學(xué)方法、教學(xué)內(nèi)容、考核評(píng)價(jià)方式等方面不斷探索、并不斷完善。經(jīng)過(guò)兩個(gè)學(xué)期的考試(實(shí)行教考分離)、參加江蘇省ACM競(jìng)賽、挑戰(zhàn)杯比賽、參加教師科研活動(dòng)等,都取得了較好的成績(jī)。因此,這一教學(xué)改革措施得到廣大學(xué)生的認(rèn)可。
參考文獻(xiàn):
[1] 李秉璋,徐亞平,羅燁,等. 以提高應(yīng)用能力為目標(biāo)進(jìn)行計(jì)算機(jī)專(zhuān)業(yè)課教學(xué)——“面向?qū)ο蟪绦蛟O(shè)計(jì)”教學(xué)改革探索[J]. 計(jì)算機(jī)教育,2006(12):28-30.
[2] 湯亞玲,秦峰. 面向?qū)ο蟪绦蛟O(shè)計(jì)課程教學(xué)探究[J]. 安徽工業(yè)大學(xué)學(xué)報(bào):社會(huì)科學(xué)版,2008,25(6):132-134.
[3] 歐陽(yáng)津,申秀民. 改革實(shí)驗(yàn)教學(xué)模式培養(yǎng)創(chuàng)新性人才[J]. 中國(guó)大學(xué)教育,2008(2):79-80.
[4] 徐光偉,史有群. 培養(yǎng)創(chuàng)新能力的計(jì)算機(jī)專(zhuān)業(yè)實(shí)踐教學(xué)體系探索[J]. 計(jì)算機(jī)教育,2007(7):7-9.