費雄偉 周建存 陳偉宏
摘要:針對計算機程序類課程的實踐訓(xùn)練效果欠佳的問題,分析了問題產(chǎn)生的原因。以問題教學(xué)法為基礎(chǔ),采用ACM競賽模式(國際大學(xué)生程序設(shè)計競賽模式)來改革計算機程序類課程教學(xué),給出了改革方案的理論依據(jù)、具體內(nèi)容和實施過程。實際效果表明,該改革方案能有效地提升計算機程序類課程的教學(xué)質(zhì)量和教學(xué)效率。
關(guān)鍵詞:實踐訓(xùn)練;ACM競賽模式;教學(xué)質(zhì)量;教學(xué)效率
作者簡介:費雄偉(1980-),男,湖南祁陽人,湖南城市學(xué)院信息科學(xué)與工程學(xué)院,講師;周建存(1977-),男,湖南寧鄉(xiāng)人,湖南城市學(xué)院信息科學(xué)與工程學(xué)院,副教授。(湖南 益陽 413000)
基金項目:本文系湖南省教育廳教改項目(項目編號:湘教通[2012]401號379)、湖南省高等學(xué)校教學(xué)改革研究項目(項目編號:湘教通[2011]315號345)、湖南省教育科學(xué)規(guī)劃院課題(課題編號:XJK011CGD037)的研究成果。
中圖分類號:G642.0 文獻(xiàn)標(biāo)識碼:A 文章編號:1007-0079(2014)06-0098-02
計算機程序類課程是培養(yǎng)計算機各專業(yè)學(xué)生學(xué)會編程或者完成軟件產(chǎn)品的課程。它的教學(xué)成敗關(guān)系到學(xué)生是否具有計算機專業(yè)工作能力,能否滿足市場的需要,能否找到合適的工作。因此在我國各高等院校將其作為核心課程,師資投入也很大。但目前我國的計算機程序類課程存在著如下幾個問題:
第一,程序類課程實踐訓(xùn)練題型單調(diào)。學(xué)生往往根據(jù)理論教學(xué)對應(yīng)的章節(jié)知識點練習(xí)書后的練習(xí)題。這些練習(xí)題存在缺乏對應(yīng)的應(yīng)用場景、難度較低、無法發(fā)揮學(xué)生創(chuàng)造性思維等缺點,造成學(xué)生對其興趣不足或者訓(xùn)練不夠。[1]對于需要提高編程能力的學(xué)生而言,他們需要挑戰(zhàn)性的題目來訓(xùn)練自己。為了吸引學(xué)生利用課余時間練習(xí)程序,需要有實際應(yīng)用背景的題目,能激發(fā)學(xué)生興趣的題目。
第二,程序類課程實踐效果評價不客觀。學(xué)生完成程序類課程的實踐練習(xí)后,一般由老師檢查實踐練習(xí)的結(jié)果并進(jìn)行評價。[2]有時,程序能在幾次運行時保持正確,但程序本身錯誤。以教師只通過有限次地運行程序來斷定是否正確,可能存在著偏頗。所以教師對實踐效果的評價并不科學(xué),存在著某些結(jié)果正確但程序錯誤的情況,而學(xué)生提交的程序作業(yè)種類和版本各異,造成教師評價工作量過大,評價質(zhì)量不高等問題。
第三,程序類課程實踐缺乏反饋。傳統(tǒng)的程序類實踐課程沒有平臺的支撐,無法統(tǒng)計學(xué)生完成的程序存在的問題,也無法知道學(xué)生之間的差異,無法發(fā)揮實踐反饋的作用。若能利用計算平臺分析學(xué)生完成程序作業(yè)的情況,找到存在的問題,針對性地加以輔導(dǎo)和講解,對提高學(xué)生編程能力的提高很有好處。為了解決上述問題,采用ACM競賽模式改革計算機程序類課程教學(xué),系統(tǒng)地提出方案的理論依據(jù)、具體內(nèi)容和實施過程。
一、ACM競賽模式教學(xué)改革
ACM(Association of Computing Machinery)競賽,即國際大學(xué)生程序設(shè)計競賽,始于1970年,由美國計算機協(xié)會(Association of Computing Machinery)主辦的一年一屆的國際性賽事。該賽事的目的是展示大學(xué)生分析問題、設(shè)計算法、編寫程序、解決問題的綜合能力,同時采用3人一組的形式,也賽出大學(xué)生的團隊協(xié)作和組織能力。[3]經(jīng)過30多年的發(fā)展,它已成為全球大學(xué)生計算機程序能力競賽活動中最有影響的一項賽事。ACM由3名隊員為一組代表所在學(xué)校參賽,比賽形式為每隊使用1臺計算機在5個小時編程解決6至10個挑戰(zhàn)性問題。編程可以使用C、C++或Java,完成之后提交給判題系統(tǒng)。判題系統(tǒng)通過運行大量的測試用例來判定答案正誤或其他問題(超時或超內(nèi)存)并返回給選手。比賽的第一名頒發(fā)金牌,要求正確答題數(shù)最多且總用時最少(用以區(qū)分正確結(jié)題數(shù)目一致的排名)。以后的排名,先按正確答題數(shù),同正確答題數(shù)時按總用時少的方式排序。排名第2和排名第3的分別頒發(fā)銀牌和銅牌。基于ACM競賽模式的教學(xué)改革指采用ACM競賽的辦法,以靈活地方式組織學(xué)生按照ACM判題的方法進(jìn)行程序設(shè)計練習(xí)或測試的一種模式,旨在提高學(xué)生對編程的興趣、學(xué)習(xí)效率和評價客觀性。[4]
二、計算機程序類課程實踐教學(xué)改革方案
1.方案理論依據(jù)
該方案的理論依據(jù)來自問題教學(xué)法。問題教學(xué)法首先由前蘇聯(lián)教育家馬赫穆托夫等人提出并倡導(dǎo)。該方法首先由教師根據(jù)教學(xué)任務(wù)設(shè)計出教學(xué)問題,同時將問題創(chuàng)設(shè)一個問題情景,然后,向?qū)W生提出教學(xué)問題及其情境,激發(fā)學(xué)生熱情和探索未知的興趣,接著要求學(xué)生利用已有的知識水平,分析問題、創(chuàng)造性地解決問題,最后提升為對知識的獲得和能力的鍛煉。[5]
問題教學(xué)法相對傳統(tǒng)教學(xué)而言,有著明顯的優(yōu)勢,[5]主要體現(xiàn)在以下三個方面:
(1)學(xué)生的教學(xué)活動模式方面的優(yōu)勢。問題教學(xué)的學(xué)生活動模式為“產(chǎn)生困窘—探索—掌握”;而傳統(tǒng)教學(xué)學(xué)生活動模式則是“聽—記—練”,顯然問題教學(xué)在學(xué)生活動模式方面更為主動,更能激發(fā)學(xué)生的能動性。
(2)問題定位方面的優(yōu)勢。問題教學(xué)法把問題定位為有智力價值的教學(xué)材料,并為該材料設(shè)置情境,用來引導(dǎo)教學(xué)過程,而傳統(tǒng)教學(xué)把問題定位為學(xué)生接受知識過程要經(jīng)歷的考驗,用來做作業(yè)或考查學(xué)業(yè)成績。顯然問題教學(xué)對問題的定位比傳統(tǒng)教學(xué)對問題的定位更為科學(xué)和客觀。
(3)教學(xué)程序方面的優(yōu)勢。問題教學(xué)的教學(xué)程序是首先創(chuàng)設(shè)問題情境,再經(jīng)歷探索,把未知創(chuàng)造為已知,而傳統(tǒng)教學(xué)的教學(xué)程則相反,首先向?qū)W生傳授現(xiàn)有知識,再要求學(xué)生把已知應(yīng)用到未知中去。顯然問題教學(xué)的教學(xué)程序能滿足人的探索欲望,體會了獲得知識的過程和樂趣,教學(xué)程序更為積極。
問題教學(xué)法的操作難點主要是對教師的教學(xué)技能要求高。這是因為問題教學(xué)法,圍繞問題展開,以創(chuàng)造性解決問題為中心,以任務(wù)的完成和升華來結(jié)束。因此問題情境顯得尤為關(guān)鍵,這就需要精心設(shè)置問題,并置入一個現(xiàn)實貼切的情境中去,所以對教師而言難度較大,要求也高。對此,教師必須系統(tǒng)地經(jīng)過這些方面的教學(xué)技能培訓(xùn)。為了解決教師在程序設(shè)計類課程中實踐教學(xué)環(huán)節(jié)技能培訓(xùn)方面的不足,利用ACM平臺,集合各個專業(yè)教師和計算機專家的力量,并引入專家判題的形式,為實施問題教學(xué)提供了條件和資源。目前北京大學(xué)、浙江大學(xué)、杭州電子科技大學(xué)等都在網(wǎng)上開放了基于ACM模式的在線判題系統(tǒng)(Online Judge System)。[6]教師可以利用它,進(jìn)行在線的出題,選擇題目進(jìn)行測試或練習(xí)。它的題目數(shù)目很多,涉及到計算機程序類課程的各種算法和應(yīng)用,學(xué)生可以自由練習(xí)也可以由教師指定題目進(jìn)行練習(xí),重要的是能夠進(jìn)行實時的判題,也能給出反饋信息和排名情況。
2.方案具體內(nèi)容
作為湖南城市學(xué)院而言,由于計算機專業(yè)辦學(xué)時間短,積累和沉淀少,可以利用其他大學(xué)的基于ACM的在線判題系統(tǒng)。筆者選擇的是杭州電子科技大學(xué)的在線判題系統(tǒng),因為它的題型適合應(yīng)用型本科院校的需求,且提供了對學(xué)生的引導(dǎo),幫助其使用和循序漸進(jìn)地學(xué)好計算機編程。[7]改革的課程是筆者開設(shè)的計算機程序類課程:C語言程序設(shè)計、C++程序設(shè)計還有Java程序設(shè)計。改革的內(nèi)容分為平時練習(xí)、課堂練習(xí)、月末的測試和考試,均在杭州電子科技大學(xué)的在線判題系統(tǒng)中進(jìn)行。
3.方案實施過程
課堂練習(xí)按照教學(xué)進(jìn)度完成對已學(xué)知識的檢驗和鞏固的目的。其實施過程是教師根據(jù)已學(xué)和在學(xué)的理論部分知識,編寫或選擇匹配的訓(xùn)練題目,要求學(xué)生在上機實踐課時內(nèi)完成。教師對完成情況進(jìn)行統(tǒng)計、分析和記錄成績,以此指導(dǎo)下次教學(xué)。平時練習(xí)由學(xué)生自主選擇題目進(jìn)行練習(xí),教師只規(guī)定完成的數(shù)目,逐月計算學(xué)生平時練習(xí)的完成度。月末時,由教師按月度學(xué)習(xí)進(jìn)度,編寫或選擇一套測試題目,要求學(xué)生按照ACM競賽規(guī)則完成一次實戰(zhàn)比賽。教師根據(jù)比賽情況分析和統(tǒng)計,以進(jìn)行總結(jié)。學(xué)生也體驗到對知識的綜合運用和激烈的競爭,對提供其學(xué)習(xí)動力,鍛煉其競爭能力大有好處。月度成績好的同學(xué),篩選為學(xué)校ACM競賽隊的選手,進(jìn)行專門地培訓(xùn),進(jìn)一步挖掘?qū)W生潛能和激勵學(xué)生。期末時,組織所有任課教師,精心組織一次全課程的競賽作為課程的考生成績,讓考試客觀且公平地反映學(xué)生的水平。
三、改革效果
經(jīng)過對信息科學(xué)與工程學(xué)院(以下簡稱“我院”)3個專業(yè)計算機程序類課程3年多的改革,已經(jīng)看到了較為明顯的效果。一是在湖南省大學(xué)生程序設(shè)計競賽中成績逐步提升,由幾年前湖南省大學(xué)生程序設(shè)計競賽中獲得1個三等獎或沒有,提高到在2011年第7屆湖南省大學(xué)生程序設(shè)計競賽獲得了3個三等獎,在2012年第8屆湖南省大學(xué)生程序設(shè)計競賽獲得了2個三等獎,2013在湖南省第9屆程序設(shè)計競賽獲得了2個二等獎和1個三等獎的佳績。二是學(xué)生考取軟件設(shè)計師的人數(shù)也逐步提升。三是我院的學(xué)生就業(yè)率在全校名列前茅,2012屆畢業(yè)生一次性就業(yè)率達(dá)到93.5%??梢娀贏CM模式計算機程序類課程的教學(xué)改革提升了課程教學(xué)質(zhì)量,有效地鍛煉了學(xué)生解決問題的能力。
改革的另一個明顯的效果是提升了教學(xué)效率。改革所基于的ACM平臺共享了大量優(yōu)秀的計算機編程類題目,這些題目有情境,有梯度,也能進(jìn)行客觀判分。這些資源和平臺功能節(jié)省了教師的大量時間,提高了教課的效率。同時,學(xué)生也能在此平臺上,隨時隨地進(jìn)行練習(xí)、測試和考試,能夠挖掘自己的潛力,系統(tǒng)和循序漸進(jìn)地進(jìn)行編程能力的培養(yǎng),提高了學(xué)習(xí)的效率。
四、結(jié)語
為了適應(yīng)湖南城市學(xué)院“應(yīng)用型本科院?!钡霓k學(xué)定位,采用問題教學(xué)法,在ACM競賽模式下對我院的程序設(shè)計類課程進(jìn)行了改革。該改革改變了計算機程序設(shè)計類課程訓(xùn)練效果不佳的窘境,很好地解決了訓(xùn)練題型少、評價不客觀和缺乏教學(xué)反饋等問題。通過近三年的實施效果表明該改革有效地提升了計算機程序設(shè)計類課程的教學(xué)質(zhì)量和教學(xué)效率。下一步的工作是將該改革方法在計算機程序設(shè)計類的課程設(shè)計課程中加以探索和推廣,還有對計算機專業(yè)的其他課程也可以進(jìn)行基于問題教學(xué)法的改革方案的設(shè)計和嘗試。
參考文獻(xiàn):
[1]邱修峰.C語言實驗教學(xué)考核評價指標(biāo)及其觀測內(nèi)容分析[J].電腦開發(fā)與應(yīng)用,2009,22(8):10-11,14.
[2]林巧.基于在線評測系統(tǒng)的C語言實踐教學(xué)探討[J].實驗科學(xué)與技術(shù),2011,9(6):37-39,50.
[3]張熠,陳榮欽.以ACM為導(dǎo)向構(gòu)建C語言實驗教學(xué)新平臺的研究與實踐[J].臺州學(xué)院學(xué)報,2009,36(6):70-74.
[4]芶生平,楊鵬,汪小平,等.以ACM/ICPC競賽為載體探索課程體系建設(shè)與創(chuàng)新人才培養(yǎng)新模式[J].中國大學(xué)教學(xué),2010,(7):71-73.
[5]蕭楓.國外學(xué)校教學(xué)改革[M].沈陽:遼海出版社,2011:40-46.
[6]李丹,郭俊巍.ACM模式在常規(guī)教學(xué)中的應(yīng)用研究與探討[J].吉林農(nóng)業(yè)科技學(xué)院學(xué)報,2012,21(4):92-93.
[7]車明洙,紀(jì)洪波.一種基于ACM程序設(shè)計競賽在線評測系統(tǒng)解決方案[J].微型機與應(yīng)用,2010,(4):11-14.
(責(zé)任編輯:王意琴)