沈濟(jì)南++梁芳
摘要:本文分析了計(jì)算機(jī)程序設(shè)計(jì)類課程實(shí)踐教學(xué)存在的問(wèn)題及其原因,提出了一種基于PC2的實(shí)踐教學(xué)方法,并應(yīng)用在C語(yǔ)言程序設(shè)計(jì)教學(xué)中。該模式有利于提高學(xué)生的編程興趣,培養(yǎng)學(xué)生的實(shí)踐動(dòng)手能力和團(tuán)隊(duì)協(xié)作精神,為程序設(shè)計(jì)類課程教學(xué)改革提供了很好的借鑒。
關(guān)鍵詞:程序設(shè)計(jì);實(shí)踐教學(xué)改革;教學(xué)理念
中圖分類號(hào):G642.0 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1674-9324(2014)52-0099-02
程序設(shè)計(jì)作為計(jì)算機(jī)專業(yè)入門級(jí)的基礎(chǔ)課程,承擔(dān)著幫助學(xué)生建立計(jì)算意識(shí)并為后續(xù)專業(yè)課程的學(xué)習(xí)奠定基礎(chǔ)的任務(wù)[1]。程序設(shè)計(jì)類課程要求對(duì)理論和實(shí)驗(yàn)開(kāi)展同步教學(xué)。實(shí)踐教學(xué)作為理論教學(xué)的延伸與補(bǔ)充,可以彌補(bǔ)理論教學(xué)中學(xué)生動(dòng)手時(shí)間過(guò)少而帶來(lái)的不足,進(jìn)而加深學(xué)生對(duì)理論知識(shí)的掌握。然而,在傳統(tǒng)教育的影響下,目前大多數(shù)計(jì)算機(jī)程序設(shè)計(jì)類課程教學(xué)觀念落后、實(shí)驗(yàn)教材單一、教學(xué)方式枯燥。課堂教學(xué)過(guò)多地注重知識(shí)結(jié)構(gòu),以知識(shí)點(diǎn)為單元進(jìn)行教學(xué);實(shí)驗(yàn)教學(xué)按照章節(jié)知識(shí)點(diǎn)進(jìn)行,實(shí)驗(yàn)內(nèi)容多為驗(yàn)證性。這種教學(xué)模式導(dǎo)致學(xué)生的動(dòng)手能力及創(chuàng)造能力差,且學(xué)習(xí)積極性不高。本文針對(duì)程序設(shè)計(jì)類課程實(shí)踐教學(xué)存在的問(wèn)題,在C語(yǔ)言程序設(shè)計(jì)課程實(shí)踐教學(xué)過(guò)程中引入PC2,對(duì)程序設(shè)計(jì)類課程實(shí)踐教學(xué)改革進(jìn)行嘗試,以期提高教師的教學(xué)效能和學(xué)生的學(xué)習(xí)效率。
一、程序設(shè)計(jì)類課程實(shí)踐教學(xué)現(xiàn)狀
1.教學(xué)觀念落后。實(shí)踐教學(xué)停留在對(duì)課堂知識(shí)點(diǎn)、例題的驗(yàn)證上,實(shí)驗(yàn)內(nèi)容缺乏,設(shè)計(jì)枯燥無(wú)味,實(shí)驗(yàn)過(guò)程按部就班缺乏新意,程序設(shè)計(jì)方法與解決現(xiàn)實(shí)問(wèn)題嚴(yán)重脫節(jié),不能提高學(xué)生的學(xué)習(xí)興趣。
2.實(shí)驗(yàn)教材單一。實(shí)驗(yàn)教材不能很好地與理論教學(xué)緊密結(jié)合,大多教材的實(shí)驗(yàn)內(nèi)容固定,與實(shí)際生活結(jié)合不緊密,不能靈活地依據(jù)學(xué)生知識(shí)掌握的情況調(diào)整。
3.教學(xué)方式枯燥。傳統(tǒng)的實(shí)驗(yàn)考核由學(xué)生提交實(shí)驗(yàn)報(bào)告教師進(jìn)行批改,一方面學(xué)生不能及時(shí)地獲得實(shí)驗(yàn)結(jié)果評(píng)判,也不能當(dāng)堂了解自己的問(wèn)題出在哪里、如何糾正。久而久之,學(xué)生就缺乏了學(xué)習(xí)的激情,進(jìn)而產(chǎn)生厭倦情緒,導(dǎo)致學(xué)習(xí)積極性下降;另一方面,大量的實(shí)驗(yàn)報(bào)告給老師帶來(lái)了較大的工作負(fù)擔(dān)。
4.教學(xué)互動(dòng)缺乏。由于受到課程學(xué)時(shí)的限制,教師為了迎合教學(xué)計(jì)劃,導(dǎo)致教學(xué)過(guò)程缺乏互動(dòng),教師“教”和學(xué)生“學(xué)”相對(duì)獨(dú)立,師生之間溝通不夠。
二、PC2簡(jiǎn)介
PC2是ACM/ICPC(ACM國(guó)際大學(xué)生程序設(shè)計(jì)競(jìng)賽)控制系統(tǒng),基于C/S模式,用JAVA語(yǔ)言開(kāi)發(fā),可以運(yùn)行在任何支持JVM的平臺(tái)(Windows、Linux、Solaris等)。經(jīng)過(guò)40余年的完善與發(fā)展,PC2得到了全球計(jì)算機(jī)同行的高度認(rèn)可[2]。該平臺(tái)包括服務(wù)器端、客戶端、裁判端、競(jìng)賽端。在服務(wù)器端可以創(chuàng)建系統(tǒng)中需要的賬戶,賬戶主要分為:Administrator(管理員)、Judge(裁判機(jī))、Board(排名實(shí)時(shí)統(tǒng)計(jì)端),Team(參賽隊(duì)),Customer(觀看者)。PC2可以根據(jù)需要配置選用絕大多數(shù)的編程語(yǔ)言的使用環(huán)境,能適用于各種不同程序設(shè)計(jì)語(yǔ)言教學(xué)。教師按照ACM/ICPS模式進(jìn)行實(shí)驗(yàn)組織,將實(shí)驗(yàn)內(nèi)容、時(shí)間要求、參考答案等配置好,學(xué)生分組進(jìn)行實(shí)驗(yàn),當(dāng)堂檢測(cè)學(xué)生的實(shí)驗(yàn)結(jié)果并獲得實(shí)驗(yàn)成績(jī)。圖1為配置編程所用的開(kāi)發(fā)C++語(yǔ)言環(huán)境界面,其他程序設(shè)計(jì)語(yǔ)言的配置操作類似。
三、C語(yǔ)言程序設(shè)計(jì)實(shí)踐教學(xué)改革
在前幾年的實(shí)踐教學(xué)中,我們構(gòu)建了以C語(yǔ)言課程知識(shí)點(diǎn)為主線的實(shí)驗(yàn)教學(xué)體系[3]。該實(shí)驗(yàn)體系以程序設(shè)計(jì)語(yǔ)言的語(yǔ)句語(yǔ)法體系為脈絡(luò),涵蓋了C語(yǔ)言學(xué)習(xí)過(guò)程中的絕大部分知識(shí)點(diǎn),包含C語(yǔ)言開(kāi)發(fā)環(huán)環(huán)境、數(shù)據(jù)類型、控制結(jié)構(gòu)、函數(shù)、數(shù)組、指針、結(jié)構(gòu)體、共用體、位運(yùn)算、文件以及鏈表等。目前,大多數(shù)C程序設(shè)計(jì)課程的實(shí)踐教學(xué)中都采用了這種實(shí)驗(yàn)體系。在這種實(shí)踐體系的教學(xué)過(guò)程中,大多學(xué)生能夠按部就班,對(duì)知識(shí)點(diǎn)進(jìn)行驗(yàn)證作為實(shí)驗(yàn)?zāi)康?,循序漸進(jìn),能夠?qū)χR(shí)點(diǎn)進(jìn)行較好掌握。然而,這種模式不能夠讓學(xué)生將知識(shí)點(diǎn)靈活地串聯(lián)起來(lái),大多學(xué)生的感受是知識(shí)點(diǎn)比較孤立,實(shí)驗(yàn)內(nèi)容與日常生活中的實(shí)際問(wèn)題聯(lián)系不夠緊密,從而導(dǎo)致自律性差的學(xué)生失去了自主學(xué)習(xí)、自主創(chuàng)新的空間,不利于學(xué)生編程能力的提高,不能很好地激發(fā)學(xué)生的學(xué)習(xí)興趣。在以上實(shí)踐教學(xué)的經(jīng)驗(yàn)基礎(chǔ)上,我們對(duì)C語(yǔ)言實(shí)踐教學(xué)內(nèi)容進(jìn)行了修訂,基于PC2平臺(tái)進(jìn)行實(shí)踐教學(xué),很好地解決了傳統(tǒng)程序設(shè)計(jì)教學(xué)過(guò)程中存在的弊端。
1.教學(xué)內(nèi)容的改革。對(duì)C語(yǔ)言實(shí)驗(yàn)內(nèi)容進(jìn)行優(yōu)化整合:①?gòu)?qiáng)化程序設(shè)計(jì)的三種控制結(jié)構(gòu);②將順序結(jié)構(gòu)程序設(shè)計(jì)以及數(shù)據(jù)類型、運(yùn)算符與表達(dá)式融入到其他的實(shí)驗(yàn)項(xiàng)目中,不再對(duì)單獨(dú)的部分進(jìn)行實(shí)驗(yàn);③突出了數(shù)組、指針以及函數(shù)相互結(jié)合的綜合型實(shí)驗(yàn);④原實(shí)驗(yàn)教材中的驗(yàn)證型實(shí)驗(yàn)、理論教材的例題大部分留給學(xué)生作為課外實(shí)驗(yàn)進(jìn)行練習(xí);⑤新的實(shí)驗(yàn)內(nèi)容注重與生活實(shí)際結(jié)合,盡量多出一些與日常生活相關(guān)的實(shí)例。
2.基于PC2的實(shí)踐教學(xué)設(shè)計(jì)。將PC2用在程序設(shè)計(jì)類課程的實(shí)踐教學(xué)環(huán)節(jié),可以充分發(fā)揮PC2的優(yōu)點(diǎn),一方面能及時(shí)評(píng)判學(xué)生實(shí)驗(yàn)結(jié)果的正確性、運(yùn)行時(shí)間、內(nèi)存占用情況等,引導(dǎo)學(xué)生糾正編程過(guò)程中存在的錯(cuò)誤,很大程度上激發(fā)學(xué)生的學(xué)習(xí)興趣、提高學(xué)習(xí)效率;另一方面能減輕教師對(duì)實(shí)驗(yàn)報(bào)告的批改,使教師將精力放在教學(xué)內(nèi)容的策劃以及實(shí)驗(yàn)題目的完善上,提高教學(xué)效能。①組題。教師根據(jù)教學(xué)目標(biāo)要求和課程教學(xué)的進(jìn)度,結(jié)合學(xué)生實(shí)際水平設(shè)計(jì)實(shí)驗(yàn)題目。每次實(shí)驗(yàn)時(shí)間為100分鐘,完成實(shí)驗(yàn)內(nèi)容。在此過(guò)程中,教師針對(duì)具體的實(shí)驗(yàn)教學(xué)內(nèi)容,選取難度合適的題目,并給出題目的結(jié)果格式、輸入、輸出以及結(jié)果等文件。②組隊(duì)。突破傳統(tǒng)的實(shí)踐教學(xué)課程中每個(gè)學(xué)生單獨(dú)實(shí)驗(yàn)的限制,參照程序設(shè)計(jì)競(jìng)賽組隊(duì)形式,3個(gè)學(xué)生一組來(lái)進(jìn)行實(shí)驗(yàn)項(xiàng)目,以培養(yǎng)學(xué)生的團(tuán)隊(duì)合作精神。每組成員由學(xué)生自愿組合而成,并要求有嚴(yán)格的分工,在不同的實(shí)驗(yàn)項(xiàng)目中充當(dāng)不同的角色(如文檔整理、算法設(shè)計(jì)、組織協(xié)調(diào)等)。③課堂組織。教師將學(xué)生隊(duì)的用戶名和密碼、實(shí)驗(yàn)題目等在系統(tǒng)中進(jìn)行部署。課堂上,學(xué)生根據(jù)自己隊(duì)伍的用戶名和密碼進(jìn)入PC2系統(tǒng)進(jìn)行實(shí)驗(yàn)。教師充當(dāng)裁判角色,可以閱讀學(xué)生提交的程序并運(yùn)行以檢驗(yàn)結(jié)果,也可回答學(xué)生在做題過(guò)程中提出的問(wèn)題進(jìn)行互動(dòng)。對(duì)于驗(yàn)證型的實(shí)驗(yàn)內(nèi)容,可以設(shè)置系統(tǒng)自動(dòng)評(píng)閱。自動(dòng)評(píng)閱過(guò)程在組題的時(shí)候給出該題目的結(jié)果,系統(tǒng)在得到學(xué)生提交的結(jié)果時(shí)自動(dòng)進(jìn)行評(píng)閱。對(duì)于設(shè)計(jì)型及綜合型的實(shí)驗(yàn),可以采用手動(dòng)評(píng)閱或者系統(tǒng)自動(dòng)評(píng)閱的方式,教師在課堂上針對(duì)學(xué)生提交的文件進(jìn)行評(píng)判。④實(shí)驗(yàn)結(jié)果。每次實(shí)驗(yàn)結(jié)果通過(guò)系統(tǒng)的Board模塊排序出來(lái),可以比較客觀地反映出學(xué)生的水平。教師依據(jù)每次實(shí)驗(yàn)的結(jié)果為學(xué)生給出公正的實(shí)驗(yàn)成績(jī)。
3.構(gòu)建課程教學(xué)網(wǎng)站。為加強(qiáng)師生課外交流、引導(dǎo)學(xué)生自主學(xué)習(xí),我們構(gòu)建了專門的課程網(wǎng)站(http://ie.hbmy.edu.cn/cms)。通過(guò)該網(wǎng)站,老師按照教學(xué)周次把課程的全部教學(xué)進(jìn)度及內(nèi)容公布在課程網(wǎng)站上,學(xué)生根據(jù)教學(xué)進(jìn)度獲得相應(yīng)的教學(xué)內(nèi)容,進(jìn)行交流和思考。在上機(jī)實(shí)踐時(shí),學(xué)生能對(duì)實(shí)驗(yàn)內(nèi)容做到胸有成竹,有的放矢。也可以讓學(xué)有余地的同學(xué)能夠提前對(duì)知識(shí)進(jìn)行預(yù)習(xí)、掌握。通過(guò)該網(wǎng)站,學(xué)生提交實(shí)驗(yàn)報(bào)告及其他作業(yè),老師可以在線批改并給出成績(jī),師生互動(dòng)效果良好。目前該教學(xué)網(wǎng)站在C語(yǔ)言程序設(shè)計(jì)和數(shù)據(jù)結(jié)構(gòu)課程中已經(jīng)使用,取得了良好的教學(xué)效果。
四、結(jié)束語(yǔ)
基于PC2的程序設(shè)計(jì)類課程實(shí)踐教學(xué)方法改革,避免了傳統(tǒng)程序設(shè)計(jì)類課程實(shí)踐教學(xué)的缺點(diǎn),一方面將教師從繁重的實(shí)驗(yàn)報(bào)告批改中解放出來(lái),專心于教學(xué)內(nèi)容設(shè)計(jì),提高教學(xué)效能;另一方面能極大地提高學(xué)生的學(xué)習(xí)興趣,使其樹(shù)立良好的編程意識(shí),從而提高學(xué)習(xí)效率。實(shí)踐表明,經(jīng)過(guò)近幾年的實(shí)踐探索,學(xué)生的編程興趣得到了很大的提高,學(xué)校組織的程序設(shè)計(jì)大賽的參賽人數(shù)也逐年增加,為參加ACM ICPC奠定了堅(jiān)實(shí)的基礎(chǔ),如表1。
今后,我們將基于C語(yǔ)言程序設(shè)計(jì)課程,繼續(xù)加大程序設(shè)計(jì)類課程實(shí)踐教學(xué)改革研究,完善實(shí)踐教學(xué)體系,充分利用PC2平臺(tái)和網(wǎng)絡(luò)課堂,以期更好地為程序類課程實(shí)踐教學(xué)改革服務(wù)。
參考文獻(xiàn):
[1]王志英,蔣宗禮,楊波,等.計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)實(shí)踐教學(xué)體系與規(guī)范研究[J].中國(guó)大學(xué)教學(xué),2009,(2).
[2]董文永,馮敏,吳德敏,等.基于LAMP架構(gòu)的在線評(píng)測(cè)系統(tǒng)設(shè)計(jì)[J].Third International Conference on Education Technology and Training,2010.
[3]吳斌,劉斌.編程競(jìng)賽控制系統(tǒng)(PC2)在教學(xué)中的應(yīng)用[J].常州信息職業(yè)技術(shù)學(xué)院學(xué)報(bào),2005,(3).
[4]葉斌,陳世強(qiáng),沈濟(jì)南,等.C語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)與習(xí)題解答[M].北京:科學(xué)出版社,2011.endprint