劉衛(wèi)國(guó) 施榮華
摘要:本文分析了程序設(shè)計(jì)教學(xué)的現(xiàn)狀以及教學(xué)體系,按照以“語(yǔ)言知識(shí)—程序設(shè)計(jì)能力—應(yīng)用開(kāi)發(fā)能力”為主線的教學(xué)目標(biāo),對(duì)程序設(shè)計(jì)課程教學(xué)內(nèi)容組織與教學(xué)模式、程序設(shè)計(jì)課程系列教材與教學(xué)資源研究開(kāi)發(fā)等問(wèn)題進(jìn)行了探討。
關(guān)鍵詞:程序設(shè)計(jì);課程群建設(shè);應(yīng)用能力;教學(xué)資源
中圖分類(lèi)號(hào):G642文獻(xiàn)標(biāo)識(shí)碼:B
“計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)”是大學(xué)計(jì)算機(jī)公共課中的核心課程,其內(nèi)容以程序設(shè)計(jì)語(yǔ)言的語(yǔ)法知識(shí)和程序設(shè)計(jì)技術(shù)的基本方法為主,同時(shí)包括程序設(shè)計(jì)方法學(xué)、數(shù)據(jù)結(jié)構(gòu)與算法基礎(chǔ)等方面的初步內(nèi)容。通過(guò)本課程的學(xué)習(xí),使學(xué)生掌握必須的程序設(shè)計(jì)基本知識(shí)與基本技能,培養(yǎng)學(xué)生的程序設(shè)計(jì)能力以及分析問(wèn)題和解決問(wèn)題的能力,幫助學(xué)生建立良好的思維模式,把計(jì)算機(jī)知識(shí)應(yīng)用到不同的實(shí)際領(lǐng)域中。
1教學(xué)現(xiàn)狀分析
分析程序設(shè)計(jì)課程的教學(xué)現(xiàn)狀,可以發(fā)現(xiàn)存在以下幾個(gè)主要問(wèn)題:
(1) 程序設(shè)計(jì)語(yǔ)言的教學(xué)以語(yǔ)法教學(xué)為主線,很多情況下采用了在課堂中講語(yǔ)法、上機(jī)調(diào)程序的教學(xué)模式。課堂舉例往往針對(duì)語(yǔ)言的某個(gè)概念進(jìn)行簡(jiǎn)單編碼,即對(duì)實(shí)際程序設(shè)計(jì)過(guò)程進(jìn)行了簡(jiǎn)化,忽略了問(wèn)題分析、算法設(shè)計(jì)和程序測(cè)試與調(diào)試等重要過(guò)程。因此,目前在教學(xué)中普遍存在著一種現(xiàn)象:學(xué)生上課能聽(tīng)懂,但害怕寫(xiě)程序,碰到實(shí)際問(wèn)題時(shí)無(wú)從下手。往往是經(jīng)過(guò)一個(gè)學(xué)期的學(xué)習(xí),還是不會(huì)編寫(xiě)程序,反映了程序設(shè)計(jì)能力的不足。當(dāng)然更談不上實(shí)際的應(yīng)用開(kāi)發(fā)了。
(2) 許多考試的筆試基本上是考語(yǔ)法,為了提高應(yīng)試能力,導(dǎo)致程序設(shè)計(jì)的教學(xué)把注意力放到了語(yǔ)法的細(xì)節(jié)上,忽視了學(xué)生的實(shí)際程序設(shè)計(jì)能力的培養(yǎng),有些教材在編寫(xiě)體系上也有這個(gè)問(wèn)題。這些都不利于程序設(shè)計(jì)能力的培養(yǎng)。
(3) 在程序設(shè)計(jì)教材和教學(xué)中少有貫穿軟件工程的思想,難以做到重點(diǎn)介紹解決問(wèn)題的方法和思路、把重點(diǎn)放在問(wèn)題分析與算法設(shè)計(jì)上。
鑒于上述問(wèn)題,有必要改革現(xiàn)有程序設(shè)計(jì)課程的教學(xué)內(nèi)容和教學(xué)模式,為培養(yǎng)學(xué)生的程序設(shè)計(jì)能力、應(yīng)用開(kāi)發(fā)能力探索出切實(shí)可行的思路和辦法。
2程序設(shè)計(jì)教學(xué)體系
由于不同學(xué)校、不同專(zhuān)業(yè)對(duì)學(xué)生程序設(shè)計(jì)能力的要求不盡相同,所以程序設(shè)計(jì)課程可以采用不同的教學(xué)語(yǔ)言。從課程內(nèi)容側(cè)重點(diǎn)的不同,一般按下述方法進(jìn)行選取:
(1)C或FORTRAN 90:側(cè)重講解結(jié)構(gòu)化程序設(shè)計(jì)方法、數(shù)據(jù)結(jié)構(gòu)與算法、模塊化程序設(shè)計(jì)等。
(2)C++、C#或Java:側(cè)重講解面向?qū)ο蟮某绦蛟O(shè)計(jì)、應(yīng)用程序接口等。
(3)VC++、VB或VB .Net:側(cè)重講解可視化程序設(shè)計(jì)技術(shù)、圖形用戶界面設(shè)計(jì)及應(yīng)用程序開(kāi)發(fā)等。
無(wú)論選用哪種語(yǔ)言,都應(yīng)講解程序設(shè)計(jì)的基礎(chǔ)知識(shí)與基本程序設(shè)計(jì)技術(shù)。
從教學(xué)研究和改革角度講,程序設(shè)計(jì)課程并不是孤立的“某門(mén)”課程,而是一個(gè)整體。這個(gè)整體既包括單一程序設(shè)計(jì)語(yǔ)言的個(gè)性,也包括程序設(shè)計(jì)方法和語(yǔ)言特征的共性,所以,宜將不同程序設(shè)計(jì)語(yǔ)言課程組成課程群進(jìn)行研究,合理地將相關(guān)語(yǔ)言工具統(tǒng)一起來(lái),形成一個(gè)相對(duì)完善的課程體系。
3以培養(yǎng)應(yīng)用能力為目標(biāo)的程序設(shè)計(jì)教學(xué)
要以現(xiàn)代教育理念為指導(dǎo),探索人才培養(yǎng)規(guī)律和知識(shí)結(jié)構(gòu)要求,積極開(kāi)展課程改革創(chuàng)新研究,以夯實(shí)基礎(chǔ)、面向應(yīng)用為原則,處理好傳統(tǒng)與現(xiàn)代、理論與實(shí)踐、知識(shí)與創(chuàng)新等關(guān)系,構(gòu)建符合培養(yǎng)創(chuàng)新型人才要求的程序設(shè)計(jì)課程群教學(xué)體系。
從計(jì)算機(jī)應(yīng)用軟件人員的基本知識(shí)結(jié)構(gòu)要求出發(fā),本文提出程序設(shè)計(jì)課程應(yīng)該形成以“語(yǔ)言知識(shí)—程序設(shè)計(jì)能力—應(yīng)用開(kāi)發(fā)能力”為主線的教學(xué)目標(biāo),這反映了程序設(shè)計(jì)教學(xué)三個(gè)不同的目標(biāo)層次,同時(shí)探索為實(shí)現(xiàn)這一教學(xué)目標(biāo)的教學(xué)模式。
4程序設(shè)計(jì)課程教學(xué)內(nèi)容組織與教學(xué)模式
4.1教學(xué)內(nèi)容組織
程序設(shè)計(jì)教學(xué)內(nèi)容組織將面臨兩方面的問(wèn)題。
一方面,由于語(yǔ)言工具發(fā)展很快,可供選擇的技術(shù)方案也很多(例如,.Net框架下的編程工具),課程內(nèi)容既要新,體現(xiàn)技術(shù)發(fā)展的趨勢(shì),又要符合教學(xué)規(guī)律,體現(xiàn)教學(xué)基本要求。
另一方面,從培養(yǎng)學(xué)生程序設(shè)計(jì)能力的側(cè)重點(diǎn)不同,程序設(shè)計(jì)課程也可分為兩個(gè)層次:標(biāo)準(zhǔn)語(yǔ)言級(jí)程序設(shè)計(jì)和語(yǔ)言工具級(jí)程序設(shè)計(jì)。標(biāo)準(zhǔn)語(yǔ)言級(jí)程序設(shè)計(jì)重在語(yǔ)言(如C++、C等)級(jí)程序設(shè)計(jì)技術(shù)與原理,這里介紹的語(yǔ)言是符合語(yǔ)言標(biāo)準(zhǔn)的、不帶任何“方言”的標(biāo)準(zhǔn)語(yǔ)言,因此通用性強(qiáng),教學(xué)過(guò)程中可以選擇不同的工具環(huán)境進(jìn)行上機(jī)實(shí)現(xiàn),但在有些應(yīng)用中(例如界面設(shè)計(jì)、標(biāo)準(zhǔn)資源的利用等)和實(shí)際需要還有距離,應(yīng)用時(shí)需要補(bǔ)充環(huán)境工具的相關(guān)內(nèi)容,有些干脆作為第2門(mén)課程開(kāi)設(shè);語(yǔ)言工具級(jí)程序設(shè)計(jì)重在利用具體的集成開(kāi)發(fā)工具(如VC++、VB等)開(kāi)發(fā)應(yīng)用程序,這里雖結(jié)合具體的工具環(huán)境進(jìn)行教學(xué),有時(shí)更符合軟件開(kāi)發(fā)實(shí)際需要,但不是按照語(yǔ)言標(biāo)準(zhǔn)介紹一門(mén)程序設(shè)計(jì)語(yǔ)言。以C++程序設(shè)計(jì)教學(xué)為例,C++教學(xué)是講標(biāo)準(zhǔn)的C++,還是講VC++,實(shí)際上無(wú)論是教材還是實(shí)際教學(xué)中,目前兩種模式均存在。本文提出的基本思路是,將兩者結(jié)合起來(lái)進(jìn)行考慮,使原來(lái)要在2~3門(mén)課程中解決的問(wèn)題放在一門(mén)課中來(lái)解決,當(dāng)然內(nèi)容的組織和優(yōu)化是需要研究解決的問(wèn)題。
4.2實(shí)驗(yàn)教學(xué)設(shè)計(jì)
程序設(shè)計(jì)課程實(shí)驗(yàn)教學(xué)設(shè)計(jì),特別是研究與創(chuàng)新型案例設(shè)計(jì)是需要解決的重要問(wèn)題。在計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)實(shí)驗(yàn)教學(xué)中,構(gòu)建基礎(chǔ)型、綜合設(shè)計(jì)型和研究創(chuàng)新型“三層次”實(shí)驗(yàn)教學(xué)體系。在計(jì)算機(jī)基礎(chǔ)教學(xué)不斷深化的背景下,要重點(diǎn)開(kāi)展創(chuàng)新型實(shí)驗(yàn)教學(xué)體系的研究,結(jié)合課程設(shè)計(jì)等實(shí)踐性教學(xué)環(huán)節(jié),開(kāi)展創(chuàng)新型實(shí)驗(yàn)選題、案例、指導(dǎo)模式、考核評(píng)價(jià)等系列研究。
4.3教學(xué)模式研究
程序設(shè)計(jì)課程教學(xué)模式研究,包括課堂教學(xué)內(nèi)容的組織與優(yōu)化、實(shí)踐教學(xué)以及課程設(shè)計(jì)的指導(dǎo)模式、課程考核方式與評(píng)價(jià)標(biāo)準(zhǔn)等。基本的思路有,課堂教學(xué)講授從分析問(wèn)題到構(gòu)造算法的方法,上機(jī)著重訓(xùn)練程序調(diào)試的能力(不僅僅是驗(yàn)證程序),至于語(yǔ)言的語(yǔ)法規(guī)則,則引導(dǎo)學(xué)生通過(guò)實(shí)踐以在機(jī)器上學(xué)習(xí)為主。
5程序設(shè)計(jì)課程系列教材與教學(xué)資源研究開(kāi)發(fā)
按照“語(yǔ)言知識(shí)—程序設(shè)計(jì)能力—軟件開(kāi)發(fā)能力”的目標(biāo)要求建設(shè)“計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)”系列教材?;镜乃悸肥?以基本語(yǔ)言知識(shí)和基本的程序設(shè)計(jì)方法為基礎(chǔ),即為培養(yǎng)軟件開(kāi)發(fā)能力奠定基本的程序設(shè)計(jì)基礎(chǔ),以提高上機(jī)操作能力、程序設(shè)計(jì)與程序調(diào)試能力為核心,以提高軟件開(kāi)發(fā)應(yīng)用能力為目標(biāo),為學(xué)生提供相應(yīng)的參考教材。
按照“語(yǔ)言基礎(chǔ)—程序設(shè)計(jì)—軟件開(kāi)發(fā)”的層次要求組織開(kāi)發(fā)案例庫(kù)。案例選題有一定應(yīng)用背景,體現(xiàn)實(shí)用性,但也要符合基礎(chǔ)學(xué)習(xí)階段的特點(diǎn),不宜太復(fù)雜;案例實(shí)現(xiàn)體現(xiàn)軟件開(kāi)發(fā)的思想,覆蓋面要廣,有代表性、啟發(fā)性,能起到示范、引導(dǎo)的作用。案例庫(kù)可以由網(wǎng)絡(luò)教學(xué)平臺(tái)統(tǒng)一管理,方便學(xué)生自主學(xué)習(xí)。
6結(jié)束語(yǔ)
本文提出程序設(shè)計(jì)課程以“語(yǔ)言知識(shí)—程序設(shè)計(jì)能力—應(yīng)用開(kāi)發(fā)能力”為主線的教學(xué)目標(biāo),這反映了程序設(shè)計(jì)教學(xué)中的教學(xué)理念;改革程序設(shè)計(jì)課程的教學(xué)模式,并研究具體的實(shí)現(xiàn)途徑,力圖解決程序設(shè)計(jì)教學(xué)中的一些難點(diǎn)問(wèn)題,需要不斷地改革、創(chuàng)新和實(shí)踐。
參考文獻(xiàn):
[1] 教育部高等學(xué)校非計(jì)算機(jī)專(zhuān)業(yè)計(jì)算機(jī)基礎(chǔ)課程教學(xué)指導(dǎo)分委員會(huì).關(guān)于進(jìn)一步加強(qiáng)高校計(jì)算機(jī)基礎(chǔ)教學(xué)的幾點(diǎn)意見(jiàn)[M].北京:高等教育出版社,2004.
[2] 劉衛(wèi)國(guó).當(dāng)前深化計(jì)算機(jī)基礎(chǔ)教育改革的幾個(gè)問(wèn)題[J].大學(xué)教育科學(xué),2003(1):49-51.
[3] 侯進(jìn)軍.計(jì)算機(jī)高級(jí)語(yǔ)言的課程改革的目標(biāo)與方法研究[J].湘潭師范學(xué)院學(xué)報(bào):自然科學(xué)版,2005,27(3):121-123.
[4] 張麗萍,劉東升.程序設(shè)計(jì)精品課程建設(shè)的研究與實(shí)踐[J].內(nèi)蒙古師范大學(xué)學(xué)報(bào):教育科學(xué)版,2007,20(1):109-111.