摘 要: C語言程序設(shè)計(jì)是專業(yè)基礎(chǔ)課,筆者結(jié)合安康學(xué)院的實(shí)際情況,以及自身的教學(xué)體會(huì),探索目前針對(duì)電子信息類專業(yè)學(xué)生,進(jìn)行以程序設(shè)計(jì)能力為培養(yǎng)目標(biāo)的教學(xué)方法,近年的實(shí)際教學(xué)成果表明這些手段是有效的。
關(guān)鍵詞: 電子信息類專業(yè) C語言程序設(shè)計(jì) 教學(xué)改革
1.電子信息類專業(yè)C語言課程現(xiàn)狀分析
C語言程序設(shè)計(jì),又稱高級(jí)語言程序設(shè)計(jì),是電子信息類本科、??茖I(yè)的一門專業(yè)基礎(chǔ)課程。近些年的教學(xué)實(shí)踐表明,電子信息類專業(yè)學(xué)生程序設(shè)計(jì)能力主要靠C語言課程打下堅(jiān)實(shí)基礎(chǔ),從而使網(wǎng)絡(luò)數(shù)據(jù)庫應(yīng)用、嵌入式系統(tǒng)開發(fā)等專業(yè)核心能力的提高得以實(shí)現(xiàn)。但是,這門難度較大的課程教學(xué)效果卻不佳。
從教學(xué)方面看,目前C語言課程教學(xué)存在的問題主要有三點(diǎn):一是高級(jí)語言程序設(shè)計(jì)課程的教學(xué)內(nèi)容偏窄偏淺,二是教學(xué)方法不適當(dāng),三是實(shí)驗(yàn)考核手段落后。首先,高級(jí)語言程序設(shè)計(jì)課程在教學(xué)內(nèi)容上偏重于語言本身,在程序設(shè)計(jì)方面注意不夠。教學(xué)內(nèi)容主要是語言的語法、語義等基本內(nèi)容的介紹,以及簡單的應(yīng)用舉例,缺少較深入討論程序設(shè)計(jì)的內(nèi)容,缺少對(duì)語言運(yùn)用能力培養(yǎng)和訓(xùn)練的內(nèi)容。其次,在課程教學(xué)過程中未能充分認(rèn)識(shí)到高級(jí)語言程序設(shè)計(jì)是一門實(shí)踐性很強(qiáng)的專業(yè)基礎(chǔ)課,課程的目標(biāo)是培養(yǎng)學(xué)生分析問題和運(yùn)用程序設(shè)計(jì)語言解決實(shí)際問題的能力,而把這門課混同于一般的理論課,因而在教學(xué)過程中重視概念的講解而忽視概念的運(yùn)用,重視知識(shí)的講授而忽視對(duì)能力的培養(yǎng)。最后,在練習(xí)和考試中,由于缺少必要的技術(shù)手段,因此多采用書面方式。這樣,一方面使得學(xué)生很難把注意力集中到提高實(shí)際的程序設(shè)計(jì)能力上面,另一方面也使得教師在評(píng)判學(xué)生的練習(xí)和考試答卷時(shí)面臨巨大的工作量和難度,因此只能盡量多出一些選擇題、填空題等標(biāo)準(zhǔn)化試題。這樣也從另一方面引導(dǎo)學(xué)生把注意力更多地放在對(duì)一些基本概念和語言要素的學(xué)習(xí)上,而忽視了對(duì)程序設(shè)計(jì)能力的鍛煉和培養(yǎng)。
因此,很多學(xué)生盡管在書面考試中的成績尚可,但是在實(shí)際的程序設(shè)計(jì)能力方面普遍偏低,即使是100行以內(nèi)的簡單程序也很難在較短的時(shí)間內(nèi)正確地完成,更談不上具有較為專業(yè)化的程序設(shè)計(jì)能力了。
2.正確培養(yǎng)程序設(shè)計(jì)能力
電子信息類專業(yè)的學(xué)生應(yīng)該具備什么樣的程序設(shè)計(jì)能力呢?非計(jì)算機(jī)專業(yè)學(xué)生不可能也沒必要像計(jì)算機(jī)專業(yè)學(xué)生一樣比較系統(tǒng)地學(xué)習(xí)很多具體的理論知識(shí),而應(yīng)該更多地從學(xué)以致用的原則出發(fā)來進(jìn)行教學(xué)。所以教師在教學(xué)中應(yīng)努力落實(shí)“以程序設(shè)計(jì)方法為主線,以語法和結(jié)構(gòu)為核心,以能力培養(yǎng)為目標(biāo)”的教學(xué)理念。通過教學(xué)方法、教學(xué)手段、考試方式綜合改革,構(gòu)建課堂教學(xué)、實(shí)驗(yàn)教學(xué)、網(wǎng)絡(luò)教學(xué)、課程設(shè)計(jì)等環(huán)節(jié)的多維立體化教學(xué)環(huán)境與學(xué)習(xí)環(huán)境,可以使電子信息類專業(yè)學(xué)生的程序設(shè)計(jì)能力得到極大的鍛煉,教學(xué)質(zhì)量得到明顯的提高。
3.基于程序設(shè)計(jì)能力培養(yǎng)的教學(xué)改革實(shí)踐
3.1改革課堂教學(xué)模式
在教學(xué)內(nèi)容上,開展以講解程序設(shè)計(jì)思路和方法為主、講解語言語法規(guī)范為輔的課堂教學(xué)內(nèi)容改革探索。增加算法設(shè)計(jì)方面的內(nèi)容,而將語法規(guī)范的學(xué)習(xí)更多地放在課后,以網(wǎng)絡(luò)支持下的自主學(xué)習(xí)為主。教師應(yīng)從傳統(tǒng)的先講授基本理論、再舉一兩個(gè)小實(shí)例的課堂教學(xué)模式中改變過來。教師不應(yīng)該局限在這種教學(xué)模式下,而應(yīng)針對(duì)電子信息類專業(yè),精心準(zhǔn)備與有關(guān)章節(jié)知識(shí)相關(guān)的常用的小軟件。
在教學(xué)方法上,通過增加活動(dòng)課時(shí)比例,以任務(wù)驅(qū)動(dòng)下的協(xié)作學(xué)習(xí),達(dá)到克服滿堂灌,提高學(xué)生學(xué)習(xí)興趣的目的??梢愿鶕?jù)所電子信息類學(xué)生的專業(yè)補(bǔ)充講解一些和專業(yè)緊密相關(guān)的一些程序設(shè)計(jì)的應(yīng)用,為學(xué)生布置一些任務(wù),帶領(lǐng)學(xué)生一起開發(fā)。在開發(fā)的各個(gè)階段,教師都應(yīng)該留出時(shí)間和學(xué)生分組討論,根據(jù)自己的開發(fā)經(jīng)驗(yàn),教會(huì)學(xué)生如何發(fā)現(xiàn)和解決問題。通過學(xué)生討論做出總結(jié),教師判斷學(xué)生對(duì)該章節(jié)內(nèi)容的掌握程度,有針對(duì)性地給學(xué)生提出鞏固知識(shí)的方法和建議,并布置下一個(gè)任務(wù)。這樣,學(xué)生就會(huì)非常有興趣,因?yàn)樗麄円坏╅_發(fā)成功,就可以將這些小軟件應(yīng)用到實(shí)際生活當(dāng)中去,也同時(shí)讓他們進(jìn)一步了解自己的專業(yè)領(lǐng)域,這樣可以讓學(xué)生有很大的成就感。
通過對(duì)課堂教學(xué)模式的改革,力求達(dá)到能充分調(diào)動(dòng)學(xué)生的學(xué)習(xí)主觀能動(dòng)性,使學(xué)生不再有“學(xué)了不知道拿來有什么用,和我的專業(yè)又沒關(guān)系”的想法。
3.2改革實(shí)踐教學(xué)模式
在實(shí)驗(yàn)項(xiàng)目上,現(xiàn)在的實(shí)驗(yàn)教學(xué)基本都有現(xiàn)成的實(shí)驗(yàn)指導(dǎo)書、實(shí)驗(yàn)題目、實(shí)驗(yàn)步驟、程序流程圖,源程序全部是現(xiàn)成的,還有大量的網(wǎng)絡(luò)資源,造成學(xué)生對(duì)實(shí)驗(yàn)沒有多大的興趣,更談不上創(chuàng)新了。教師應(yīng)該從專業(yè)基礎(chǔ)課出發(fā)、改革實(shí)驗(yàn)項(xiàng)目,通過在課堂布置與專業(yè)相關(guān)的實(shí)際應(yīng)用的小軟件開發(fā)任務(wù),使他們產(chǎn)生興趣,結(jié)合嵌入式技術(shù),充分利用C語言程序設(shè)計(jì)這個(gè)開發(fā)平臺(tái)做一些研究性、探索性的課題或直接參與教師的科研項(xiàng)目。積極鼓勵(lì)他們參加全國、全省的各類競賽,積極創(chuàng)造各種條件。
在實(shí)驗(yàn)方法上,引導(dǎo)學(xué)生按照軟件工程理論的解決問題的步驟對(duì)問題抽絲剝繭,可以培養(yǎng)學(xué)生獨(dú)立解決問題的能力,使學(xué)生能真正將所學(xué)的程序設(shè)計(jì)應(yīng)用到自己的生活及以后的工作中。在開發(fā)過程中,不用過多強(qiáng)調(diào)軟件工程的理論,而重在讓他們體會(huì)軟件開發(fā)過程其過程如下。
?。?)需求分析
這一步是準(zhǔn)確地確定“為了解決這個(gè)問題,目標(biāo)系統(tǒng)必須做什么”,是確定目標(biāo)系統(tǒng)必須具備那些功能,是以后設(shè)計(jì)和實(shí)現(xiàn)目標(biāo)系統(tǒng)的基礎(chǔ)。
?。?)總體設(shè)計(jì)
這一步是從宏觀上處理“如何解決這個(gè)問題”。在這個(gè)過程中,應(yīng)充分考慮解決方案的多樣化,并對(duì)待實(shí)現(xiàn)方案進(jìn)行多方面比較,從而選出最佳方案。
(3)詳細(xì)設(shè)計(jì)
這一步的任務(wù)是把總體設(shè)計(jì)階段提出的解決方案具體化,主要是詳細(xì)規(guī)劃每一步工作如何完成。
?。?)編碼和單元測試
這一步的任務(wù)是寫出正確的易理解的源代碼和維護(hù)的程序模塊。
?。?)綜合測試
這一步的任務(wù)是通過各種類型的測試使軟件能夠達(dá)到預(yù)期的目標(biāo)和要求。
在整個(gè)實(shí)驗(yàn)教學(xué)環(huán)節(jié)中,要充分使學(xué)生感覺到自己真正成為學(xué)習(xí)的中心,而老師只起到輔助和引導(dǎo)的作用。
4.結(jié)語
總之,“C語言程序設(shè)計(jì)”的非計(jì)算機(jī)專業(yè)教學(xué)改革是一項(xiàng)長期的任務(wù),但是無論怎樣改革,都要從課程特點(diǎn)和學(xué)生的實(shí)際出發(fā),在教學(xué)過程的每一個(gè)環(huán)節(jié)中都要應(yīng)以培養(yǎng)學(xué)生的程序設(shè)計(jì)能力為目標(biāo),探索出更多適合C語言教學(xué)的教學(xué)方法,充分調(diào)動(dòng)學(xué)生學(xué)習(xí)的積極性,不斷提高教學(xué)質(zhì)量。
參考文獻(xiàn):
?。?]結(jié)鳳克.C程序設(shè)計(jì)教學(xué)模式的改革與實(shí)踐[J].中州學(xué)刊,2(X)7,(4):109.
[2]周艷明,傅瑜.淺談大學(xué)計(jì)算機(jī)應(yīng)用型人才培養(yǎng)課程體系[C].全國高校軟件工程專業(yè)教育年會(huì)論文集.北京:高等教育出版社,2007:205-208.
基金項(xiàng)目:2010安康學(xué)院教學(xué)改革立項(xiàng)項(xiàng)目(Jg03217