摘要:程序設(shè)計(jì)類課程是實(shí)踐性非常強(qiáng)一系列課程,本文針對(duì)本校程序設(shè)計(jì)類課程實(shí)驗(yàn)教學(xué)改革實(shí)踐中的教學(xué)內(nèi)容、教學(xué)方法、教學(xué)手段等方面進(jìn)行了探討。實(shí)踐表明通過(guò)這些方面的改革培養(yǎng)了學(xué)生獨(dú)立分析問(wèn)題、解決問(wèn)題的能力和創(chuàng)新意識(shí),不僅符合計(jì)算機(jī)學(xué)科發(fā)展的要求,同時(shí)也適應(yīng)了社會(huì)和產(chǎn)業(yè)的人才需求。
關(guān)鍵詞:程序設(shè)計(jì);實(shí)驗(yàn)教學(xué);協(xié)作式教學(xué)
中圖分類號(hào):G642 文獻(xiàn)標(biāo)識(shí)碼:B
程序設(shè)計(jì)是計(jì)算機(jī)專業(yè)學(xué)生必須掌握的專業(yè)技能,我校對(duì)該類課程的教學(xué)十分重視,學(xué)生的學(xué)習(xí)興趣也都很高,但教學(xué)效果普遍不太理想。我們結(jié)合近年來(lái)從事實(shí)踐教學(xué)的經(jīng)驗(yàn),就計(jì)算機(jī)程序設(shè)計(jì)類課程的實(shí)驗(yàn)教學(xué)模式的改革做了以下探討。
1注重教學(xué)內(nèi)容的系統(tǒng)性與科學(xué)性
程序設(shè)計(jì)類課程之間的內(nèi)容具有一定的連貫性,如目前大多數(shù)的院校先在一年級(jí)開設(shè)C或C++,接下來(lái)就是基于C或C++的數(shù)據(jù)結(jié)構(gòu)和面向?qū)ο蟪绦蛟O(shè)計(jì),因此我們一定要合理、科學(xué)地安排這些課程的實(shí)驗(yàn)教學(xué)內(nèi)容。如在C語(yǔ)言課程中除了講授基本的程序設(shè)計(jì)的語(yǔ)法使用、程序設(shè)計(jì)的思想之外,還必須花一定的時(shí)間講解結(jié)構(gòu)和鏈表,以及逐步灌輸面向?qū)ο笠恍┧枷?,為后繼C++和數(shù)據(jù)結(jié)構(gòu)等課程打好基礎(chǔ),注意內(nèi)容的系統(tǒng)性,避免重復(fù)[1,2]。
注意教學(xué)內(nèi)容的不斷更新。計(jì)算機(jī)技術(shù)的發(fā)展非常迅速,我們應(yīng)該根據(jù)學(xué)科發(fā)展、經(jīng)濟(jì)發(fā)展及市場(chǎng)人才的需求來(lái)及時(shí)地更新教學(xué)內(nèi)容。我院從最初的“Pascal語(yǔ)言程序設(shè)計(jì)”、“C語(yǔ)言程序設(shè)計(jì)”到后來(lái)采用以C++語(yǔ)言為主要編程語(yǔ)言。如在程序設(shè)計(jì)基礎(chǔ)課程中以C++作為基礎(chǔ)語(yǔ)言,在“數(shù)據(jù)結(jié)構(gòu)”課程中以C++語(yǔ)言代替C語(yǔ)言,在數(shù)據(jù)庫(kù)課程中以Visual C++作為前臺(tái)開發(fā)的實(shí)驗(yàn)環(huán)境。近年來(lái)根據(jù)社會(huì)對(duì)計(jì)算機(jī)專業(yè)人才的需求以及程序設(shè)計(jì)發(fā)展的趨勢(shì),目前我院計(jì)劃計(jì)算機(jī)專業(yè)學(xué)生以Java作為基礎(chǔ)語(yǔ)言課程(軟件專業(yè)繼續(xù)開設(shè)C++語(yǔ)言課程),并增開基于.net的相關(guān)課程。
2實(shí)驗(yàn)教學(xué)和理論教學(xué)有機(jī)結(jié)合
將實(shí)驗(yàn)教學(xué)與課堂講授有機(jī)結(jié)合起來(lái),進(jìn)行恰當(dāng)銜接,可以提高學(xué)習(xí)效率。首先,教師必須充分準(zhǔn)備好實(shí)驗(yàn)的內(nèi)容,及時(shí)解決學(xué)生實(shí)驗(yàn)過(guò)程中遇到的問(wèn)題,同時(shí)采納學(xué)生提出的合理化意見并及時(shí)改進(jìn)。其次,在每周一次的教研活動(dòng)時(shí),同門課程的教師可集體備課,研究教材與實(shí)驗(yàn)教學(xué)的方法,討論學(xué)生的學(xué)習(xí)情況,交流心得,研究考
試及評(píng)分方法。
理論課教師需兼上實(shí)驗(yàn)課,這樣可以了解學(xué)生的實(shí)驗(yàn)課情況,并經(jīng)常把學(xué)生出錯(cuò)的問(wèn)題和難理解的問(wèn)題通過(guò)課堂再次講解,同時(shí)應(yīng)與本課程的其他實(shí)驗(yàn)課教師溝通交流,便于課堂教學(xué)的改進(jìn),把理論課與實(shí)驗(yàn)課統(tǒng)一組織、計(jì)劃,避免理論課與實(shí)驗(yàn)課脫節(jié)。
3注重基本技能的訓(xùn)練,培養(yǎng)學(xué)生分析解決問(wèn)題的能力
(1) 基本技能的訓(xùn)練
程序設(shè)計(jì)類課程是實(shí)踐性非常強(qiáng)的課程,通過(guò)基本語(yǔ)法知識(shí)、基本算法的學(xué)習(xí),最后形成一系列的基本技能,包括語(yǔ)法知識(shí)的靈活運(yùn)用、上機(jī)調(diào)試技巧、編寫代碼等。因此在實(shí)驗(yàn)教學(xué)中應(yīng)有意識(shí)地進(jìn)行這些方面的訓(xùn)練,比如帶領(lǐng)學(xué)生讀一些經(jīng)典的程序,分析經(jīng)典的算法并進(jìn)行模仿,上機(jī)調(diào)試程序并對(duì)運(yùn)行結(jié)果進(jìn)行評(píng)析,對(duì)已有程序進(jìn)行修改實(shí)現(xiàn)新的功能。通過(guò)以上訓(xùn)練,學(xué)生既復(fù)習(xí)了基本的語(yǔ)法知識(shí),又獲得了一定的技巧。
實(shí)驗(yàn)教學(xué)是教師和學(xué)生的共同活動(dòng)。但是目前一些學(xué)生基礎(chǔ)比較薄,動(dòng)手能力和獨(dú)立工作能力相對(duì)也較差,加上或多或少的惰性,因此依賴教師的情況比較嚴(yán)重。為此我們?cè)趯?shí)驗(yàn)教學(xué)中開展了協(xié)作式教學(xué)方法,增加了學(xué)生與教師的互動(dòng),培養(yǎng)學(xué)生分析解決問(wèn)題的能力,收到了良好的教學(xué)效果。
(2) 開展協(xié)作式教學(xué)法
學(xué)生成立學(xué)習(xí)小組,每組4~5人,在每次實(shí)驗(yàn)課和課余時(shí)間,每個(gè)小組對(duì)教師事先布置的內(nèi)容進(jìn)行討論,并且將討論內(nèi)容進(jìn)行總結(jié)。下次實(shí)驗(yàn)課上教師要留出一點(diǎn)時(shí)間讓每組總結(jié)討論結(jié)果,必要時(shí)教師做簡(jiǎn)單的總結(jié)。教師發(fā)現(xiàn)好的設(shè)計(jì)思路和想法時(shí),應(yīng)鼓勵(lì)各小組之間相互學(xué)習(xí)、相互討論、集思廣益,發(fā)揮大家的創(chuàng)造力去將這些好的想法加以實(shí)現(xiàn)。充分利用開放的交互網(wǎng)絡(luò)實(shí)現(xiàn)資源共享,如網(wǎng)上答疑、網(wǎng)上聊天、BBS、討論區(qū),同學(xué)們可就學(xué)習(xí)中遇到的問(wèn)題展開討論,任課教師可定期為同學(xué)們解答。同時(shí)在有限的設(shè)備條件下,學(xué)校應(yīng)盡量提供更好的實(shí)踐環(huán)境和實(shí)踐機(jī)會(huì),盡可能地開放實(shí)驗(yàn)室,鼓勵(lì)學(xué)生獨(dú)立工作,培養(yǎng)獨(dú)立思考的能力和創(chuàng)新精神[3]。
4考試和評(píng)分方法的改革
根據(jù)計(jì)算機(jī)程序設(shè)計(jì)課程實(shí)踐性強(qiáng)的特點(diǎn),我們?cè)诳己酥刑岣吡似綍r(shí)實(shí)踐和討論的成績(jī)比例,占到50%甚至更高。平時(shí)實(shí)踐中增加單元考核的內(nèi)容,并將每次考核的分?jǐn)?shù)按相應(yīng)比例記入總評(píng)分。另外由于開展了討論教學(xué),因此教師根據(jù)學(xué)生的情況和小組的考評(píng)情況將每次討論成績(jī)按比例記入總評(píng)。在期末的實(shí)驗(yàn)考試中,利用開發(fā)的實(shí)驗(yàn)教學(xué)平臺(tái)進(jìn)行上機(jī)考試,學(xué)生隨機(jī)從試題庫(kù)中抽取試題(與平時(shí)訓(xùn)練的題目類似),然后由系統(tǒng)自動(dòng)評(píng)判。這樣即節(jié)省了老師批改試題的時(shí)間,而且可以減少相互抄襲現(xiàn)象。由于考試題目與平時(shí)訓(xùn)練的題目類似,可以促使學(xué)生在平時(shí)實(shí)驗(yàn)中獨(dú)立分析問(wèn)題,解答問(wèn)題。
在每學(xué)期末,我們用2周的時(shí)間開設(shè)課程設(shè)計(jì),讓學(xué)生結(jié)合自己的專業(yè)或興趣進(jìn)行選題,然后自編程序上機(jī)調(diào)試,完成一個(gè)大作業(yè)或一個(gè)相對(duì)完整的系統(tǒng)。通過(guò)這一過(guò)程可讓學(xué)生了解并熟悉整個(gè)系統(tǒng)的開發(fā)過(guò)程與操作的步驟。我們認(rèn)為,通過(guò)考試和評(píng)分方法的改革能更好地考查學(xué)生應(yīng)用計(jì)算機(jī)的水平,更好地培養(yǎng)學(xué)生把學(xué)到的計(jì)算機(jī)基礎(chǔ)知識(shí)和基本能力應(yīng)用到專業(yè)實(shí)際問(wèn)題的處理上。
5小結(jié)
這幾年的教學(xué)實(shí)踐表明,上面介紹的一些整合思路是行之有效的,激發(fā)了學(xué)生程序設(shè)計(jì)的興趣,開發(fā)了學(xué)生的潛能,提高了學(xué)生的編程能力和解決實(shí)際問(wèn)題的能力。這幾年我們?cè)诖髮W(xué)生ACM競(jìng)賽、省市級(jí)的程序設(shè)計(jì)大賽中取得了優(yōu)異的成績(jī),有大批的學(xué)生通過(guò)了國(guó)家級(jí)程序員、高級(jí)程序員資格證書。計(jì)算機(jī)知識(shí)和技術(shù)更新非???,對(duì)于培養(yǎng)這類人才的專業(yè)課程,特別是程序設(shè)計(jì)類課程,必須及時(shí)更新教學(xué)理念,科學(xué)進(jìn)行課程設(shè)置,合理安排教學(xué)計(jì)劃,運(yùn)用網(wǎng)絡(luò)化教學(xué)手段,在教學(xué)內(nèi)容、教學(xué)方法和考核方式上進(jìn)行一系列的更新與整合,以適應(yīng)新形勢(shì)下人才培養(yǎng)的需要。
參考文獻(xiàn):
[1] 張敏霞. 程序設(shè)計(jì)語(yǔ)言課程教學(xué)方法改革的探索與實(shí)踐[J]. 中國(guó)高教研究,2004,(2):90.
[2] 張基溫. 計(jì)算機(jī)課程體系整合暢想[J]. 計(jì)算機(jī)教育,2004,(8):59.
[3] 孫宇清,馬軍. 在高級(jí)程序設(shè)計(jì)語(yǔ)言教學(xué)中對(duì)學(xué)生創(chuàng)新能力與合作精神的培養(yǎng)[J]. 高等理科教育,2000,(3):54-56.