劉添華,周 屹,運(yùn)海紅
(黑龍江工程學(xué)院 計算機(jī)科學(xué)與技術(shù)學(xué)院,黑龍江 哈爾濱150050)
為改變目前工程教育中重理論、輕實(shí)踐,學(xué)生眼高手低的人才培養(yǎng)現(xiàn)狀,提出了有針對性的教育理念。如“CDIO”和“卓越工程師計劃”就是其中重要的改革探索?!癈DIO”作為一種工程教育模式,代表了構(gòu)思(Conceive)、設(shè)計(Design)、實(shí)現(xiàn)(Implement)和運(yùn)作(Operate)四個教育層面。它以產(chǎn)品研發(fā)到產(chǎn)品運(yùn)行的生命周期為載體,讓學(xué)生以主動的、實(shí)踐的、課程之間有機(jī)聯(lián)系的方式學(xué)習(xí)工程;“卓越工程師計劃”也是以社會需求為導(dǎo)向,以實(shí)際工程為背景,以工程技術(shù)為主線,著力提高學(xué)生的工程意識、工程素質(zhì)和工程實(shí)踐能力。而側(cè)重能力培養(yǎng)、注重做中學(xué)是兩者的共性所在,代表了今后一個時期工程應(yīng)用型人才的培養(yǎng)方向。這也意味著課程體系及具體課程建設(shè)都要瞄準(zhǔn)這一方向。
C語言程序設(shè)計課程是一門理工科學(xué)生必修的重要專業(yè)基礎(chǔ)課,主要面向一、二年級同學(xué)開設(shè),不僅是國家計算機(jī)等級考試的需要,更為后續(xù)的專業(yè)課程學(xué)習(xí)奠定良好的邏輯思維、計算思維、程序設(shè)計、程序調(diào)試基礎(chǔ)。C語言是一種衍生語言,很多流行語言、新生語言都借鑒了它的思想,正確掌握C語言,是學(xué)習(xí)C++、Java、C#等編程語言的基礎(chǔ)。
對任何課程教學(xué)而言,教學(xué)主導(dǎo)是教師,教學(xué)主體是學(xué)生,決定教學(xué)品味的是教學(xué)方法,決定教學(xué)品質(zhì)的是教學(xué)內(nèi)容,而檢核教學(xué)效果的是考核方式。對于C語言這門課程也不例外,本文以C語言課程教學(xué)改革為切入點(diǎn),瞄準(zhǔn)“側(cè)重能力培養(yǎng)”及“注重做中學(xué)”的培養(yǎng)理念進(jìn)行課程改革,通過調(diào)整教學(xué)內(nèi)容、改進(jìn)教學(xué)方法、轉(zhuǎn)變考核方式這三方面改革實(shí)踐,使傳統(tǒng)的計算機(jī)課程更適應(yīng)當(dāng)前人才培養(yǎng)需要。
問題導(dǎo)向是C語言課程教學(xué)改革的邏輯起點(diǎn)。那么在C語言課程教學(xué)實(shí)踐中存在哪些突出問題呢?本文認(rèn)為存在“三多三少”的問題,即:概念多實(shí)例少;理論多編程少;灌輸多互動少。
概念多、語法復(fù)雜,缺少既有說服力又簡潔易懂的教學(xué)實(shí)例,勢必使學(xué)生在學(xué)習(xí)過程中積極性不高;編程少使學(xué)生的動手能力薄弱,獨(dú)立編寫程序解決實(shí)際問題比較困難;更要引起注意的是,目前計算機(jī)語言課堂的通病是課堂教學(xué)方式單一、枯燥、互動少,C語言也不例外。這些問題在實(shí)際教學(xué)實(shí)踐中都或多或少存在,使學(xué)生學(xué)習(xí)興趣喪失,影響了教學(xué)效果和人才培養(yǎng)質(zhì)量。也與注重能力培養(yǎng)和做中學(xué)的先進(jìn)工程教育理念背道而馳,到了不可不改的地步。
針對前面提到的問題,應(yīng)把培養(yǎng)學(xué)生學(xué)習(xí)興趣、邏輯思維及動手能力體現(xiàn)在課程教學(xué)當(dāng)中,開展有針對性的改革。內(nèi)容決定品質(zhì),教學(xué)內(nèi)容的調(diào)整是改革核心;方法是載體,要讓學(xué)生發(fā)自內(nèi)心喜歡這門課程,從惡之到樂之,教學(xué)方法的改革十分重要;而最后改革成敗與否需要評價依據(jù)和檢驗(yàn)標(biāo)準(zhǔn),所以與課堂教學(xué)相配套的考核方式改革也勢在必行。這樣就構(gòu)成了三位一體的課程改革總體思路,并且是一個可以動態(tài)測控調(diào)整的閉環(huán)系統(tǒng)。貫穿在三項改革中間的主線就是能力提升,以需求為導(dǎo)向,以應(yīng)用為目標(biāo),學(xué)以致用。
C語言課程的特點(diǎn)是內(nèi)容多,如果完全按照課本的章節(jié)順序逐一推進(jìn),很難按時完成教學(xué)計劃且使教學(xué)內(nèi)容空泛,重點(diǎn)不突出。因此,弱化一部分內(nèi)容(如運(yùn)算符、編譯預(yù)處理、文件等),“凝練重點(diǎn),整合知識模塊”成為該課程授課內(nèi)容改革的重點(diǎn)。
主要做法是把原來教材中按章節(jié)設(shè)計的“橫切片”式的教學(xué)內(nèi)容按教學(xué)進(jìn)程進(jìn)行重新組織調(diào)整,使之變成依托各種實(shí)例程序的“縱貫線”式教學(xué)內(nèi)容,強(qiáng)化各章節(jié)間的有機(jī)聯(lián)系,對基本概念、知識點(diǎn)進(jìn)行反復(fù)強(qiáng)化,從而提升教學(xué)效果,更新后的教材主要包括四大知識模塊,見表1。
表1 知識模塊
可以看出,整合后的教學(xué)內(nèi)容更加注重知識點(diǎn)之間的有機(jī)連接,“前為后基礎(chǔ),后為前提升”,環(huán)環(huán)相扣,滾動遞進(jìn)。如果前面有遺忘,后面也無法完成,倒逼學(xué)生在接受新知識點(diǎn)的同時回顧上一模塊的教學(xué)內(nèi)容,以此類推,直至全部課程講授完畢。這就促進(jìn)了所有知識點(diǎn)的融匯貫通和扎實(shí)掌握。
教學(xué)內(nèi)容的另一改革措施就是突出教學(xué)實(shí)例。力求通過形象思維鞏固邏輯思維,提升學(xué)生的學(xué)習(xí)興趣。改變原來概念多、實(shí)例少的教學(xué)內(nèi)容架構(gòu)。例如數(shù)組章節(jié),原有14個例題,現(xiàn)在增加到20個例題。函數(shù)章節(jié),原有16個例題,現(xiàn)在增加到23個例題。更加注重課堂教學(xué)內(nèi)容的補(bǔ)充。且增加的教學(xué)實(shí)例都是仔細(xì)斟酌,有趣鮮活的,具有足夠的知識承載量,使課程內(nèi)容集先進(jìn)性和趣味性于一體。
目前,各類課程改革都較為注重理論教學(xué)與實(shí)踐的緊密結(jié)合,啟發(fā)式、互動式、網(wǎng)絡(luò)化、全方位等等。對于C語言課程而言,要找到適合該門課程本身的教學(xué)方式方法,而且要盡量簡單實(shí)用。在具體實(shí)踐中,增加了符合90后學(xué)生思維模式和文化特點(diǎn)的編程訓(xùn)練,利用目前便捷的網(wǎng)絡(luò)及移動終端,將課堂拓展延伸,變枯燥的課堂灌輸為課上、課下雙向互動模式,改變前面提到的灌輸多、互動少的教學(xué)方式,提高學(xué)生的接受度,具體做法如下。
2.2.1 啟發(fā)教學(xué)
在課程講授過程中,教師首先把新知識隱藏在一個或多個案例當(dāng)中,然后組織學(xué)生對案例進(jìn)行思考、分析、討論。例如在講解循環(huán)嵌套九九乘法表案例時,先講貼近生活的有趣味的例子——俄羅斯的套娃,兩者相似,都是一個結(jié)構(gòu)被另一個結(jié)構(gòu)完整包含,之后再由一個算式過渡到一行,由一行過渡到整個乘法表,這樣從點(diǎn)到線,從線到面,抽絲剝繭、層層遞進(jìn)。這種方法不但給學(xué)生提供了充分的思考和質(zhì)疑空間,而且學(xué)生邊學(xué)邊做,自然對所學(xué)知識理解得更加深入。
2.2.2 課堂翻轉(zhuǎn)
實(shí)驗(yàn)教學(xué)是C語言課程教學(xué)的重點(diǎn),傳統(tǒng)的實(shí)驗(yàn)教學(xué)方式是教師講授加學(xué)生上機(jī),教師講授過程中只是介紹語法和操作,對編程思路的引導(dǎo),往往不到位。學(xué)生上機(jī)也只是按老師灌輸?shù)姆椒ú僮饕槐?,本來是提高學(xué)生實(shí)際動手能力的最佳平臺卻形同虛設(shè),學(xué)生沒有鞏固所學(xué)、沒有自由發(fā)揮、沒有能力提升。
對實(shí)驗(yàn)教學(xué)的改革就是要打破傳統(tǒng)模式。具體做法是:將學(xué)生推到主體位置,深入挖掘?qū)W生潛能。教學(xué)形式采用分組討論式,讓學(xué)生3~4人一組,組內(nèi)同學(xué)分工合作,大家既分享知識,又養(yǎng)成團(tuán)隊意識,還可以互相啟發(fā),彌補(bǔ)盲點(diǎn)。每次實(shí)驗(yàn)課每組選派一人上臺講授解題思路、方法和經(jīng)驗(yàn),充分調(diào)動學(xué)生的學(xué)習(xí)熱情,更主要的是讓學(xué)生改變了對語言、編程的陌生感和恐懼感,讓他們在學(xué)習(xí)中激發(fā)潛能,樹立自信,這恰恰是包括課程改革在內(nèi)所有教學(xué)改革的宗旨和目的所在。
2.2.3 以賽促學(xué)
目前,各級各類計算機(jī)競賽,不僅能帶動學(xué)生的學(xué)習(xí)興趣,優(yōu)異的比賽成績也能加大學(xué)生求職的籌碼。鼓勵學(xué)生參加軟件編程競賽,激發(fā)學(xué)生求知欲和自我實(shí)現(xiàn)是教學(xué)方法改革的重要組成部分。通過比賽,豐富了實(shí)踐教學(xué)的形式,真正讓學(xué)生在實(shí)戰(zhàn)中得到鍛煉,以賽帶學(xué)、以賽促學(xué)、以賽驗(yàn)學(xué)。在過去的兩年里,學(xué)生在相關(guān)比賽中已經(jīng)取得非常優(yōu)異的成績。2013年底,學(xué)生參加了學(xué)校的第13屆“科技之星”計算機(jī)大賽,有三名同學(xué)獲獎。通過比賽,學(xué)生的編程能力得到很大提升。
2.2.4 仿真演練
通過綜合實(shí)訓(xùn)或課程設(shè)計的方式,使學(xué)生在學(xué)以致用的氛圍里,親身體驗(yàn),獨(dú)立完成項目的全過程(從系統(tǒng)分析、功能劃分、概要設(shè)計、詳細(xì)設(shè)計、直到調(diào)試完成)。每名同學(xué)一個題目,同學(xué)之間不能重復(fù),表2為選取某學(xué)期學(xué)生課程設(shè)計部分題目,可以看出題目設(shè)計的實(shí)用性和趣味性。
表2 課程設(shè)計題目
通過改革,增強(qiáng)了學(xué)生的學(xué)習(xí)興趣和主動性,學(xué)生在課堂上能積極主動思考,課下能主動找老師提出自己的設(shè)計方案,同老師討論優(yōu)化算法;能夠在老師的指導(dǎo)下,參與到實(shí)戰(zhàn)性的程序競賽中,把課堂所學(xué)知識應(yīng)用到其中;同時也為后續(xù)專業(yè)課程學(xué)習(xí)打下堅實(shí)的基礎(chǔ),通過課程設(shè)計仿真模擬工程環(huán)境,提高了學(xué)生的工程能力和工程素養(yǎng),以及創(chuàng)新能力。
C語言作為一門操作性很強(qiáng)的課程,課程考核應(yīng)從實(shí)踐出發(fā)、立足能力培養(yǎng)。筆試的形式并不能全面考核學(xué)生的能力。改革后的考核方式主要是利用上機(jī)進(jìn)行考核,考試的內(nèi)容偏重編程,語法知識自然嵌套其中。考試成績評定可以采取上機(jī)測試和平時表現(xiàn)相結(jié)合的方式,更加注重對學(xué)習(xí)過程的考核。如學(xué)生參加競賽并表現(xiàn)優(yōu)異,可酌情加分。成績評定具體標(biāo)準(zhǔn):知識掌握30%(小測驗(yàn)、相關(guān)論文、辯論、習(xí)題作業(yè));應(yīng)用能力40%(綜合練習(xí)、設(shè)計、課內(nèi)實(shí)驗(yàn)、案例分析);學(xué)習(xí)態(tài)度20%(出勤、作業(yè)、小組討論10%,課堂筆記10%);道德修養(yǎng)10%(精神面貌、言語方式、行為禮貌、交流互動)。
在上機(jī)測試過程中,以編程題為主,避免花大量時間、精力去背語法,例如,考察學(xué)生程序調(diào)試能力時,教師會人為制造某種“障礙”(程序中存在邏輯錯誤或語法錯誤),讓學(xué)生在規(guī)定時間內(nèi)排除故障。通過這種方式考核學(xué)生對知識的綜合運(yùn)用能力,評判學(xué)生的實(shí)際工程處理能力。讓學(xué)生成為考試的主宰,只要他們細(xì)心,有創(chuàng)意就會得高分,而不是被動地去作答那一張張死板的試卷。把枯燥無聊甚至帶有巨大壓力的考核注入人本關(guān)懷,以學(xué)好會用為評價準(zhǔn)則。實(shí)際運(yùn)行效果良好。
針對C語言課程在教學(xué)實(shí)踐中存在的主要問題,結(jié)合當(dāng)前CDIO及“卓越工程師計劃”,著力能力培養(yǎng)和做中學(xué),探索了教學(xué)內(nèi)容、教學(xué)方法及考核方式三位一體的總體課程改革思路并付諸實(shí)踐。將教學(xué)內(nèi)容分解為若干知識點(diǎn),在各知識點(diǎn)之間建立有機(jī)聯(lián)系,對于難理解的概念及內(nèi)容,通過建立前后聯(lián)系反復(fù)增強(qiáng)學(xué)生的認(rèn)知和理解,不斷強(qiáng)化,變知識碎片為有機(jī)整體;通過對教學(xué)方法的改革,激發(fā)學(xué)生的學(xué)習(xí)興趣,將啟發(fā)式教學(xué)、課堂翻轉(zhuǎn)、案例教學(xué)等方法應(yīng)用在教學(xué)實(shí)踐當(dāng)中,讓快樂學(xué)習(xí)成為可能,提高了學(xué)習(xí)效果和效率;通過對考核方式的改革,從理論知識考核轉(zhuǎn)向?qū)嶋H動手能力測試,而且是動態(tài)測試,即上機(jī)操作過程中動態(tài)指出學(xué)生編程錯誤,動態(tài)調(diào)試,讓學(xué)生在考核中體現(xiàn)其學(xué)習(xí)效果。改革實(shí)踐證明,學(xué)生的學(xué)習(xí)興趣、對知識掌握的牢固性、通過編程解決實(shí)際問題的能力以及團(tuán)隊意識和合作精神均同步提升。使先進(jìn)的工程教育理念物化在C語言程序設(shè)計這門課程當(dāng)中,且教學(xué)效果良好,學(xué)生滿意度高。
盡管對C語言程序設(shè)計課程進(jìn)行了一些探索和嘗試,也取得了一定的教學(xué)效果,但畢竟一門課程在學(xué)生專業(yè)學(xué)習(xí)中占比有限,今后有必要從計算機(jī)專業(yè)課程體系總體改革的角度做更進(jìn)一步的探索和實(shí)踐。
[1] 鐘美.培養(yǎng)應(yīng)用型人才為目標(biāo)的C語言教學(xué)改革[J].計算機(jī)教育,2013(16):55-58.
[2] 周屹,詹曉娟.基于CDIO理念的計算機(jī)基礎(chǔ)課程實(shí)踐教學(xué)改革與創(chuàng)新[J].中國冶金教育,2011(2):43-45.
[3] 王鵬遠(yuǎn),蘇虹.高校非計算機(jī)專業(yè)C語言教學(xué)改革與實(shí)踐[J].計算機(jī)教育,2011(2):15-18.
[4] 苗世迪,郭紅,唐光義.基于“卓越工程師計劃”的“Oracle數(shù)據(jù)庫”教學(xué)方法研究[J].教學(xué)研究,2014(2):44-46.
[5] 汪欣.應(yīng)用型本科院校C語言程序設(shè)計教學(xué)改革研究[J].福建電腦,2013(5):167-168.
[6] 楊春波,雷國華,劉海青,等.PBL與案例式教學(xué)法在高校程序設(shè)計課程教學(xué)中的結(jié)合應(yīng)用[J].計算機(jī)時代,2011(12):37-39.
[7] 運(yùn)海紅,鄭妍.應(yīng)用型本科院?;谧吭焦こ處熡媱澋挠嬎銠C(jī)基礎(chǔ)教學(xué)研究[J].科技創(chuàng)新與應(yīng)用,2013(9):274-275.
[8] 金靜,楊朝霞.現(xiàn)代教學(xué)模式與CDIO理念在數(shù)據(jù)結(jié)構(gòu)課程中的實(shí)踐[J].高等教育,2011(5):144-146.
[9] 秦玉平,馬靖善.C語言程序設(shè)計課程教材建設(shè)與教學(xué)方法研究[J].計算機(jī)教育,2010(4):157-159.
[10]譚浩強(qiáng).C程序設(shè)計[M].3版.北京:清華大學(xué)出版社,2005.