摘 要:本文對(duì)計(jì)算機(jī)專業(yè)程序設(shè)計(jì)課程群包含的內(nèi)容進(jìn)行了研究和分析,分析了各門課程包含的內(nèi)容以及各門課程之間的關(guān)系,討論了程序設(shè)計(jì)課程的教學(xué)現(xiàn)狀,給出了程序設(shè)計(jì)課程群建設(shè)與研究的基本思路。程序設(shè)計(jì)課程群應(yīng)當(dāng)以“程序設(shè)計(jì)”為核心,注重實(shí)踐與方法,采用項(xiàng)目驅(qū)動(dòng)式教學(xué)模式,加強(qiáng)程序設(shè)計(jì)課程的實(shí)踐教學(xué),加強(qiáng)師資隊(duì)伍建設(shè),改革程序設(shè)計(jì)課程的考核方式,以培養(yǎng)適應(yīng)未來發(fā)展需要的軟件人才。
關(guān)鍵詞:計(jì)算機(jī)專業(yè) 程序設(shè)計(jì) 課程群
中圖分類號(hào):TP3 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3791(2013)06(a)-0163-02
1 程序設(shè)計(jì)課程群中存在的問題
1.1 現(xiàn)有情況
目前大多數(shù)高校針對(duì)計(jì)算機(jī)開設(shè)的以C語言為基礎(chǔ)的程序設(shè)計(jì)類課程有:C/C++語言程序設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)、面向?qū)ο蟪绦蛟O(shè)計(jì)等。不少高校采用以課堂教學(xué)為主,實(shí)驗(yàn)教學(xué)為輔,再配合課程設(shè)計(jì)的教學(xué)模式。分析程序設(shè)計(jì)課程群的教學(xué)現(xiàn)狀,可以發(fā)現(xiàn)在程序設(shè)計(jì)課程群中主要存在以下幾個(gè)問題(圖1)。
1.1.1 規(guī)程程序化
課程定位和課程目標(biāo)不夠明確。舊的人才培養(yǎng)模式對(duì)應(yīng)用型人才培養(yǎng)模式仍然有一定的影響,程序設(shè)計(jì)類課程教學(xué)大綱不能滿足應(yīng)用型人才培養(yǎng)的目標(biāo)。課程定位和目標(biāo)中未能明確規(guī)定課程教學(xué)要達(dá)到的效果。在課程教學(xué)和人才培養(yǎng)目標(biāo)關(guān)系的認(rèn)識(shí)上存在偏差。
1.1.2 課程體系松散缺乏連貫
程序設(shè)計(jì)類的課程在知識(shí)結(jié)構(gòu)和教學(xué)結(jié)構(gòu)上缺乏一條明確的主線,結(jié)構(gòu)松散,不能前后連貫。教師教授各自為戰(zhàn),沒有形成很好的向上遞進(jìn)關(guān)系,造成學(xué)一門是一門,到處是樹葉,而形不成樹枝和樹干。
1.1.3 教學(xué)內(nèi)容抽象難懂,教學(xué)方法單一
程序設(shè)計(jì)語言的教學(xué)以語法教學(xué)為主線,很多情況下采用了在課堂中講語法、上機(jī)調(diào)程序的教學(xué)模式。課堂舉例往往針對(duì)語言的某個(gè)概念進(jìn)行簡單編碼,即對(duì)實(shí)際程序設(shè)計(jì)過程進(jìn)行了簡化,忽略了問題分析、算法設(shè)計(jì)和程序測試與調(diào)試等重要過程。在程序設(shè)計(jì)教學(xué)中少有貫穿軟件工程的思想,難以做到重點(diǎn)介紹解決問題的方法和思路,把重點(diǎn)放在問題分析與算法設(shè)計(jì)上。因此,目前在教學(xué)中普遍存在著一種現(xiàn)象:學(xué)生上課能聽懂,但害怕寫程序,碰到實(shí)際問題時(shí)無從下手。往往是經(jīng)過一個(gè)學(xué)期的學(xué)習(xí),還是不會(huì)編寫程序,反映了程序設(shè)計(jì)能力的不足,當(dāng)然更談不上實(shí)際的應(yīng)用開發(fā)了。
1.1.4 課程的實(shí)踐效果不理想
對(duì)課程實(shí)踐重要性的重視依然不夠,實(shí)際知識(shí)運(yùn)用的訓(xùn)練較少,實(shí)踐學(xué)時(shí)不足,學(xué)生沒有足夠的時(shí)間進(jìn)行訓(xùn)練,同時(shí),上機(jī)內(nèi)容多是驗(yàn)證性的,不能有效調(diào)動(dòng)學(xué)生的積極性和創(chuàng)造性。
1.1.5 考核方式過于單一
課程考核方式仍然采用筆試方式,許多考試的筆試基本上是考語法,為了提高應(yīng)試能力,導(dǎo)致程序設(shè)計(jì)的教學(xué)把注意力放到了語法的細(xì)節(jié)上,忽視了學(xué)生的實(shí)際程序設(shè)計(jì)能力的培養(yǎng),有部分課程雖然初步探索采用上機(jī)考核,而考核內(nèi)容局容局限于課本知識(shí),未能考核學(xué)生編程能力和綜合實(shí)踐能力。
鑒于上述問題,有必要改革現(xiàn)有程序設(shè)計(jì)課程的教學(xué)內(nèi)容和教學(xué)模式,為培養(yǎng)學(xué)生的程序設(shè)計(jì)能力、應(yīng)用開發(fā)能力探索出切實(shí)可行的思路和辦法。
2 程序設(shè)計(jì)課程群建設(shè)與研究的內(nèi)容:
2.1 現(xiàn)有情況
從教學(xué)研究和改革角度講,程序設(shè)計(jì)課程并不是孤立的“某門”課程,而是一個(gè)整體。這個(gè)整體既包括單一程序設(shè)計(jì)語言的個(gè)性,也包括程序設(shè)計(jì)方法和語言特征的共性,所以,宜將不同程序設(shè)計(jì)語言課程組成課程群進(jìn)行研究,合理地將相關(guān)語言工具統(tǒng)一起來,形成一個(gè)相對(duì)完善的課程體系。程序設(shè)計(jì)課程群建設(shè)與研究的內(nèi)容有以下幾點(diǎn)。
第一,研究課程群中各門課程的科學(xué)設(shè)置以及研究課程群中各門課程的內(nèi)涵與外延。程序設(shè)計(jì)系列課程旨在培養(yǎng)學(xué)生面向?qū)ο蟪绦蛟O(shè)計(jì)的“抽象”和“設(shè)計(jì)”能力,積累豐富的編程經(jīng)驗(yàn),熟悉相關(guān)編程語言、工具和平臺(tái),做到基本功扎實(shí),實(shí)踐能力強(qiáng),觸類旁通,善于綜合運(yùn)用所學(xué)的知識(shí)積極主動(dòng)解決問題。以“C語言程序設(shè)計(jì)”和“C語言課程設(shè)計(jì)”為公共基礎(chǔ)的程序邏輯訓(xùn)練;以“數(shù)據(jù)結(jié)構(gòu)”為核心的程序設(shè)計(jì)方法培養(yǎng)與程序抽象能力培養(yǎng);以“C++程序設(shè)計(jì)”貫穿面向?qū)ο蟪绦蛟O(shè)計(jì)新理念;并在此基礎(chǔ)上開設(shè)“Windows程序設(shè)計(jì)”“Java程序設(shè)計(jì)”“.Net程序設(shè)計(jì)”“嵌入式程序設(shè)計(jì)”“計(jì)算機(jī)圖形學(xué)”和“三維建?!钡冗x修課程。
第二,從教與學(xué)的兩個(gè)角度,研究從C語言結(jié)構(gòu)化程序設(shè)計(jì)到VC++面向?qū)ο蟪绦蛟O(shè)計(jì)的思想和方法的轉(zhuǎn)化與銜接,這種轉(zhuǎn)化與銜接的難度、焦點(diǎn)以及降低這種轉(zhuǎn)化與銜接難度的措施與方法。研究程序設(shè)計(jì)課程群中各門課程的教學(xué)手段和教學(xué)方法,做到理論課與上機(jī)實(shí)踐課并重、教師指導(dǎo)與學(xué)生獨(dú)立實(shí)踐同步,并且以學(xué)生獨(dú)立實(shí)踐為主的教學(xué)方法。采取“時(shí)間集中、人員集中、小班指導(dǎo)、項(xiàng)目趨動(dòng)”的方式進(jìn)行課程設(shè)計(jì),修訂、完善課程設(shè)計(jì)要求。
第三,研究程序設(shè)計(jì)課程群中各門課程的考試內(nèi)容和考試方法。
第四,研究程序設(shè)計(jì)課程群的教師隊(duì)伍的建設(shè)與培養(yǎng)。
第五,不斷跟蹤研究程序設(shè)計(jì)課程群的教學(xué)與軟件產(chǎn)業(yè)人才市場的需求關(guān)系。
第六,如何借助“挑戰(zhàn)杯”“全國信息技術(shù)大賽”“藍(lán)橋杯”“ACM程序設(shè)計(jì)大賽”等平臺(tái)培養(yǎng)學(xué)生創(chuàng)新能力。這些大賽均是有影響力的大賽,競賽題目大多是實(shí)際工程應(yīng)用中遇到的問題,將大賽的一些基礎(chǔ)實(shí)驗(yàn)和算法設(shè)計(jì)實(shí)驗(yàn)題目改編成適合學(xué)生使用的題目,學(xué)生可以通過這些平臺(tái)來學(xué)習(xí)和分析問題,然后再進(jìn)行設(shè)計(jì)。通過這個(gè)過程不僅學(xué)生可以提高自己的學(xué)習(xí)能力,教師也可以即時(shí)掌握學(xué)生對(duì)課堂知識(shí)的理解和掌握程度。
3 程序設(shè)計(jì)課程群建設(shè)與研究的方法
課程群建設(shè)是專業(yè)建設(shè)的一部分,計(jì)算機(jī)專業(yè)人才培養(yǎng)方案應(yīng)瞄準(zhǔn)專業(yè)定位,與行業(yè)現(xiàn)狀和發(fā)展相適應(yīng),才能明確知識(shí)點(diǎn)、課程和課程群的具體內(nèi)容。同時(shí),課程群建設(shè)應(yīng)當(dāng)注重課程的知識(shí)重組、知識(shí)融合,是對(duì)單獨(dú)課程的教學(xué)大綱、實(shí)驗(yàn)大綱等教學(xué)內(nèi)容的重新設(shè)計(jì)。從計(jì)算機(jī)應(yīng)用軟件人員的基本知識(shí)結(jié)構(gòu)要求出發(fā),本文提出的程序設(shè)計(jì)課程群應(yīng)當(dāng)以“程序設(shè)計(jì)”為核心,注重實(shí)踐與方法,走“實(shí)踐—抽象—設(shè)計(jì)—再實(shí)踐”的路子,尊重客觀的學(xué)習(xí)規(guī)律,注重學(xué)習(xí)興趣的培養(yǎng),在不斷實(shí)踐的過程中體會(huì)程序設(shè)計(jì)的方法,加深對(duì)程序設(shè)計(jì)理論的理解。本文提出建設(shè)課程群的方法如下。
第一,從現(xiàn)有的人才培養(yǎng)方案(教學(xué)計(jì)劃)來研究課程群中各門課程的科學(xué)設(shè)置?,F(xiàn)有的課程科目包括“高級(jí)語言程序設(shè)計(jì)”、“數(shù)據(jù)結(jié)構(gòu)”、算法設(shè)計(jì)與分析、“面向?qū)ο蟮某绦蛟O(shè)計(jì)”、實(shí)用軟件開發(fā)工具(如“Visual Basic”、.NET)等。以此為基礎(chǔ),達(dá)到“點(diǎn)—線—面—體,即主要知識(shí)點(diǎn)—主干課(線)—課程群(面)—課程群體系的課程群構(gòu)建思路和構(gòu)建框架進(jìn)行研究,達(dá)到目標(biāo)明確、層次分明、定位正確、強(qiáng)化基礎(chǔ)、拓寬專業(yè)知識(shí)面的應(yīng)用型人才培養(yǎng)的要求。第二,教師授課“一條龍”的教學(xué)方法研究。如研究“高級(jí)語言程序設(shè)計(jì)”(一般語言為C語言),再到“數(shù)據(jù)結(jié)構(gòu)”“算法設(shè)計(jì)與分析”“面向?qū)ο蟮某绦蛟O(shè)計(jì)”(目前我們學(xué)院以C++為主,在2011屆學(xué)生中增加了VC++),一直到“實(shí)用軟件開發(fā)工具”的教學(xué)模式,通過這種“一條龍”的教學(xué)方法和教學(xué)實(shí)踐來研究從c語言結(jié)構(gòu)化程序設(shè)計(jì)到VC++面向?qū)ο蟪绦蛟O(shè)計(jì)的轉(zhuǎn)化與銜接。第三,改變教學(xué)方法,進(jìn)行項(xiàng)目驅(qū)動(dòng)式教學(xué),培養(yǎng)學(xué)生程序設(shè)計(jì)思維。要達(dá)到程序設(shè)計(jì)能力的培養(yǎng)目標(biāo),必須改變傳統(tǒng)的教學(xué)方法,不能采用滿堂灌和老師教學(xué)生學(xué)的模式.需要培養(yǎng)學(xué)生的編程思想和自主創(chuàng)新能力,培養(yǎng)學(xué)生的編程技巧。教師在教學(xué)過程中堅(jiān)持強(qiáng)化學(xué)生的抽象思維能力和設(shè)計(jì)(動(dòng)手)能力的培養(yǎng),從教學(xué)過程的一點(diǎn)一滴人手,逐步引導(dǎo)學(xué)生建立創(chuàng)造性學(xué)習(xí)和創(chuàng)造性工作的意識(shí),以達(dá)到培養(yǎng)創(chuàng)新人才的目的。第四,采用課程實(shí)驗(yàn)、課程設(shè)計(jì)、綜合畢業(yè)設(shè)計(jì)(生產(chǎn)實(shí)習(xí))相結(jié)合的實(shí)驗(yàn)?zāi)J剑瑥?qiáng)化學(xué)生動(dòng)手能力、程序設(shè)計(jì)興趣與能力的培養(yǎng)。特別是畢業(yè)設(shè)計(jì)能以項(xiàng)目開發(fā)帶動(dòng)實(shí)踐,從實(shí)戰(zhàn)的角度進(jìn)行真正的編程訓(xùn)練。課程設(shè)計(jì)采取“時(shí)間集中、人員集中、小班指導(dǎo)、項(xiàng)目趨動(dòng)”的方式進(jìn)行強(qiáng)化培訓(xùn),在教師指導(dǎo)下,學(xué)生獨(dú)立或分組完成應(yīng)用項(xiàng)目的設(shè)計(jì)與編程。課程設(shè)計(jì)的指導(dǎo)教師采取逐年更新、滾動(dòng)發(fā)展的方式更新各課程設(shè)計(jì)的文檔(課程設(shè)計(jì)任務(wù)書),與時(shí)俱進(jìn),以IT行業(yè)軟件開發(fā)需求為導(dǎo)向,改進(jìn)課程設(shè)計(jì)的內(nèi)容與指導(dǎo)方式。第五,研究理論考試和上機(jī)實(shí)踐考試的成績比例關(guān)系(目前我們學(xué)校采用的理論70%和實(shí)踐30%的比例關(guān)系),改變傳統(tǒng)的考試模式,采用上機(jī)考核方式(上機(jī)考試系統(tǒng)正在實(shí)施過程中)。傳統(tǒng)的筆試考試,不能體現(xiàn)學(xué)生的編程能力。第六,通過與軟件公司等軟件企業(yè)相結(jié)合,以走出去、請(qǐng)進(jìn)來的方式不斷跟蹤研究程序設(shè)計(jì)課程群的教學(xué)與軟件產(chǎn)業(yè)人才市場的需求關(guān)系。同時(shí)借助“挑戰(zhàn)杯”“全國信息技術(shù)大賽”“藍(lán)橋杯”“ACM程序設(shè)計(jì)大賽”等平臺(tái)培養(yǎng)學(xué)生創(chuàng)新能力。
4 結(jié)語
軟件開發(fā)與設(shè)計(jì)是現(xiàn)代計(jì)算機(jī)技術(shù)中非常重要的應(yīng)用領(lǐng)域。程序設(shè)計(jì)課程群的培養(yǎng)目標(biāo)是培養(yǎng)高水平的軟件設(shè)計(jì)開發(fā)人才,培養(yǎng)學(xué)生的程序設(shè)計(jì)能力和編碼能力。我們分析了程序設(shè)計(jì)課程群的教學(xué)現(xiàn)狀,指出了程序設(shè)計(jì)課程群在教學(xué)過程中存在的問題。通過問題分析及教學(xué)過程的經(jīng)驗(yàn)總結(jié),給出了程序設(shè)計(jì)課程群建設(shè)與研究的基本思路:明確培養(yǎng)目標(biāo),并將目標(biāo)細(xì)化至課程章節(jié);采用項(xiàng)目驅(qū)動(dòng)為主的教學(xué)模式。輔以各種先進(jìn)教學(xué)手段,培養(yǎng)學(xué)生程序設(shè)計(jì)能力;加強(qiáng)實(shí)踐教學(xué)過程,培養(yǎng)學(xué)生的實(shí)際動(dòng)手能力;加強(qiáng)教材建設(shè),編寫適于學(xué)生實(shí)際情況的項(xiàng)目驅(qū)動(dòng)模式的教材;加強(qiáng)師資培養(yǎng),提高教師的程序設(shè)計(jì)能力和教學(xué)能力;改革傳統(tǒng)考試方式為上機(jī)考核。
參考文獻(xiàn)
[1] 徐克奇.程序設(shè)計(jì)實(shí)踐與分析課程建設(shè)的改革與探索[J].計(jì)算機(jī)教育,2009,6:63-66.
[2] 馬偉鋒,雷運(yùn)發(fā),孫曉勇.應(yīng)用型軟件人才培養(yǎng)方案的關(guān)鍵問題研究[J].浙江科技學(xué)院學(xué)報(bào),2009(21):69-71.
[3] 許德鵬.提升程序設(shè)計(jì)教學(xué)質(zhì)量的探討Ⅲ[J].中國電力教育,2010(31):53-54.
[4] 翁偉,吳克壽,吳蕓,等.程序設(shè)計(jì)課程群建設(shè)探索與實(shí)踐[J].計(jì)算機(jī)教育,2009(23):122-125.