公務(wù)員期刊網(wǎng) 論文中心 正文

計(jì)算機(jī)編程課程實(shí)踐教學(xué)優(yōu)化

前言:想要寫(xiě)出一篇引人入勝的文章?我們特意為您整理了計(jì)算機(jī)編程課程實(shí)踐教學(xué)優(yōu)化范文,希望能給你帶來(lái)靈感和參考,敬請(qǐng)閱讀。

計(jì)算機(jī)編程課程實(shí)踐教學(xué)優(yōu)化

摘要:目前,計(jì)算機(jī)編程課程教學(xué)存在許多問(wèn)題,比如程序實(shí)踐教學(xué)環(huán)節(jié)薄弱、作業(yè)考察方式不合理、抄襲現(xiàn)象存在等。針對(duì)存在的問(wèn)題,提出了基于在線On-lineJudge學(xué)習(xí)測(cè)評(píng)系統(tǒng)的計(jì)算機(jī)類編程課程教學(xué)實(shí)踐手段優(yōu)化改革思路,以滿足該類課程實(shí)踐性強(qiáng)的需要,以增強(qiáng)學(xué)生學(xué)習(xí)能力和使用計(jì)算機(jī)編程解決實(shí)際應(yīng)用問(wèn)題的能力。該教學(xué)改革手段在最近幾屆學(xué)生上應(yīng)用實(shí)踐后取得了良好的教學(xué)效果,證明其能有效培養(yǎng)學(xué)生的程序?qū)嵺`應(yīng)用能力。該實(shí)踐手段既可以為程序設(shè)計(jì)類課程提供在線實(shí)驗(yàn)平臺(tái),還可以為藍(lán)橋杯、ACM程序設(shè)計(jì)競(jìng)賽以及編程類科技競(jìng)賽等大賽提高平臺(tái)服務(wù)。

關(guān)鍵詞:OnlineJudge;教學(xué)改革;計(jì)算機(jī)編程課程

一、引言

隨著計(jì)算機(jī)和互聯(lián)網(wǎng)技術(shù)的發(fā)展,網(wǎng)絡(luò)在線教育與計(jì)算機(jī)輔助教學(xué)引發(fā)了一場(chǎng)深刻的教育模式和教育觀念的變革,一方面計(jì)算機(jī)技術(shù)減輕了教育者的工作量,提供了更豐富的教育表現(xiàn)形式,并可在教育資源和教育對(duì)象之間建立聯(lián)系;另一方面互聯(lián)網(wǎng)技術(shù)使得更為廣泛的群體可以遠(yuǎn)程接受到更高質(zhì)量的教育。另外,近期中國(guó)國(guó)務(wù)院印發(fā)了《新一代人工智能發(fā)展規(guī)劃》,《規(guī)劃》中指出中國(guó)到2030年人工智能理論、技術(shù)與應(yīng)用總體達(dá)到世界領(lǐng)先水平。人工智能中最重要的部分就是程序設(shè)計(jì)。在高校計(jì)算機(jī)相關(guān)專業(yè)的教學(xué)活動(dòng)中,編程課程有利于培養(yǎng)學(xué)生的創(chuàng)新思維和邏輯思維,增強(qiáng)學(xué)生的信息素養(yǎng)。目前,計(jì)算機(jī)及其相關(guān)專業(yè)需要學(xué)習(xí)幾門(mén)計(jì)算機(jī)語(yǔ)言專業(yè)基礎(chǔ)課程,比如C語(yǔ)言程序設(shè)計(jì)、C++程序設(shè)計(jì)、JAVA程序設(shè)計(jì)等,傳統(tǒng)教學(xué)方式為大量理論學(xué)時(shí)與少量實(shí)踐學(xué)時(shí)相結(jié)合,學(xué)生通過(guò)理論教學(xué)學(xué)習(xí)計(jì)算機(jī)語(yǔ)言相關(guān)的基礎(chǔ)知識(shí),在實(shí)踐學(xué)時(shí)階段開(kāi)展上機(jī)驗(yàn)證與擴(kuò)展學(xué)習(xí),具有較好的教學(xué)效果,但是也存在以下幾個(gè)問(wèn)題。(1)課后作業(yè)一般為教材的習(xí)題,數(shù)量較少而且擴(kuò)展性不強(qiáng),教師一般選取一部分代表性的習(xí)題作為課后作業(yè),不能照顧到各個(gè)知識(shí)點(diǎn)。(2)學(xué)生所交作業(yè)一般為紙質(zhì)稿,教師審閱時(shí)工作量非常大。以一個(gè)小型工程為例,代碼可能為幾百甚至幾千行,而一個(gè)教學(xué)班人數(shù)少則幾十人,多則上百人。全部檢查學(xué)生上交的代碼,可操作性太差,因而,教師一般采用抽查其中部分關(guān)鍵代碼段,相應(yīng)地實(shí)際的檢查效果也大打折扣。(3)由于過(guò)程監(jiān)控力度不夠,抄襲現(xiàn)象嚴(yán)重。(4)傳統(tǒng)的紙質(zhì)作業(yè)方式不能有效激發(fā)學(xué)生學(xué)習(xí)的積極性,簡(jiǎn)單的評(píng)分依據(jù)難以對(duì)學(xué)生學(xué)習(xí)情況作出客觀評(píng)價(jià),相反,它在一定程度上還挫傷學(xué)生的學(xué)習(xí)積極性。針對(duì)上述問(wèn)題,有人提出將目前軟件工程中的自動(dòng)測(cè)試的方法引入到計(jì)算機(jī)語(yǔ)言課程教學(xué)中來(lái),學(xué)生的課后作業(yè)不再采用傳統(tǒng)的紙質(zhì)方式,而是采用在網(wǎng)上系統(tǒng)來(lái)完成,讓系統(tǒng)對(duì)學(xué)生提交的代碼進(jìn)行自動(dòng)評(píng)判,從而減輕任課教師的工作量,最大限度降低學(xué)生抄襲行為,同時(shí)提高教師對(duì)學(xué)生學(xué)習(xí)過(guò)程的監(jiān)控力度,并使評(píng)分更為客觀,進(jìn)而提高整個(gè)理論與實(shí)踐教學(xué)的質(zhì)量。目前有很多比較流行的OnlineJudge(OJ)系統(tǒng),比如北京大學(xué)的POJ在線程序測(cè)試系統(tǒng),杭州電子科技大學(xué)的HDUOnlineJudgeSystem,還有些比較優(yōu)秀的開(kāi)源OJ系統(tǒng)可以利用,從而實(shí)現(xiàn)對(duì)課程設(shè)計(jì)中的代碼進(jìn)行在線自動(dòng)評(píng)判的方法。實(shí)踐表明,該方法實(shí)現(xiàn)較為簡(jiǎn)單,且效果良好。

二、OnlineJudge簡(jiǎn)介

ACM/ICPC國(guó)際大學(xué)生程序設(shè)計(jì)競(jìng)賽是由ACM(AssociationforComputingMachiner-y,美國(guó)計(jì)算機(jī)協(xié)會(huì))組織的年度性競(jìng)賽,國(guó)內(nèi)高校從1996年開(kāi)始參加ACM/ICPC亞洲預(yù)賽。為了利用計(jì)算機(jī)技術(shù)與網(wǎng)絡(luò)技術(shù)在線開(kāi)展程序設(shè)計(jì)競(jìng)賽,OnlineJudge系統(tǒng)(簡(jiǎn)稱OJ)被研發(fā)出來(lái),它是一個(gè)利用web技術(shù)開(kāi)發(fā)的在線判題系統(tǒng)。注冊(cè)的用戶可以利用Web瀏覽器在線提交程序多種計(jì)算機(jī)語(yǔ)言的源程序(如C、Java、C++、Pascal等),OJ系統(tǒng)自動(dòng)對(duì)提交的源代碼進(jìn)行編譯和執(zhí)行,產(chǎn)生執(zhí)行文件,并利用預(yù)先設(shè)計(jì)的大量測(cè)試數(shù)據(jù)來(lái)檢驗(yàn)程序所得到結(jié)果的正確性,最終判斷用戶提交源代碼的可用性?;谶@樣的背景,很多大學(xué)開(kāi)發(fā)了自己的OnlineJudge系統(tǒng),任課教師可以在平臺(tái)后臺(tái)添加自定義的題目,進(jìn)行上機(jī)實(shí)踐考試,舉辦程序設(shè)計(jì)比賽,學(xué)生提交的程序可以實(shí)時(shí)得到評(píng)測(cè),返回測(cè)評(píng)結(jié)果。利用該技術(shù),既能鼓勵(lì)學(xué)生提高動(dòng)手能力,又極大地方便了教師的教學(xué)工作。

三、實(shí)踐教學(xué)手段優(yōu)化

利用OnlineJudge開(kāi)展計(jì)算機(jī)編程課程實(shí)踐教學(xué)手段優(yōu)化,采用了如下的步驟:(1)利用OnlineJudge程序測(cè)評(píng)平臺(tái),任課教師先設(shè)置問(wèn)題題庫(kù),每道題都針對(duì)著編程應(yīng)用中的一個(gè)實(shí)際知識(shí)點(diǎn)。除此之外,還需結(jié)合西南科技大學(xué)國(guó)防學(xué)院信息對(duì)抗技術(shù)專業(yè)本科生的培養(yǎng)目標(biāo),在設(shè)計(jì)問(wèn)題時(shí),可以圍繞國(guó)防軍工背景,這不僅可以增強(qiáng)問(wèn)題的生動(dòng)性,還能增強(qiáng)學(xué)生對(duì)該專業(yè)的學(xué)習(xí)興趣。(2)任課教師從題庫(kù)中抽取部分題目作為作業(yè)、考試或者比賽實(shí)踐。比如在理論課教學(xué)結(jié)束后,任課教師告知學(xué)生需要在OJ中完成題目,并提醒學(xué)生注意截止提交時(shí)間,如圖1所示為某次比賽時(shí)的題目。(3)學(xué)生通過(guò)賬號(hào)登陸測(cè)評(píng)平臺(tái)查看問(wèn)題集,針對(duì)問(wèn)題,在PC機(jī)上進(jìn)行編程調(diào)試,調(diào)試通過(guò)的程序源代碼通過(guò)平臺(tái)提交到服務(wù)器進(jìn)行測(cè)評(píng),如果代碼正確則返回Accept,錯(cuò)誤則返回WrongAnswer,有語(yǔ)法錯(cuò)誤則提示PresentationError,并同時(shí)返回學(xué)生提交源代碼編譯后程序使用的內(nèi)存、運(yùn)行時(shí)間等程序評(píng)價(jià)數(shù)據(jù)信息。如圖2所示為OJ實(shí)時(shí)返回的學(xué)生答題狀態(tài)信息。(4)教師登錄到平臺(tái)后臺(tái)可以導(dǎo)出學(xué)生完成情況的統(tǒng)計(jì)信息,包括完成率、正確率、重合率等信息。

四、效果驗(yàn)證

從2014級(jí)開(kāi)始,利用任教的《C語(yǔ)言程序設(shè)計(jì)》開(kāi)展實(shí)驗(yàn)工作,共兩個(gè)教學(xué)班(A班和B班),A班和B班人數(shù)相差不大,對(duì)A班采取以O(shè)nlineJudge的計(jì)算機(jī)課程教學(xué)手段優(yōu)化,對(duì)B班則按照傳統(tǒng)的教學(xué)方法開(kāi)展教學(xué)實(shí)踐。為了區(qū)分使用和未使用Online-Judge實(shí)踐教學(xué)效果,實(shí)驗(yàn)將學(xué)生的成績(jī)分成五個(gè)等級(jí),分別是<60分、60-69分、70-79分、80-89分、90分及以上。實(shí)驗(yàn)結(jié)果如下所示。針對(duì)2014級(jí)《C語(yǔ)言程序設(shè)計(jì)》教學(xué)班,使用OnlineJudge的效果如圖3所示,使用OJ的A班平均成績(jī)、及格率、優(yōu)良率都好于未使用OJ的B班。圖32014級(jí)學(xué)生C語(yǔ)言成績(jī)分布統(tǒng)計(jì)針對(duì)2015級(jí)《C語(yǔ)言程序設(shè)計(jì)》教學(xué)班,使用OnlineJudge的效果如圖4所示,使用OJ的A班平均成績(jī)、及格率、優(yōu)良率也均好于未使用OJ的B班。針對(duì)2016級(jí)《C語(yǔ)言程序設(shè)計(jì)》教學(xué)班,使用OnlineJudge的效果如圖5所示,兩個(gè)班級(jí)均適用使用OnlineJudge課程教學(xué)手段優(yōu)化,可以得到兩個(gè)班的成績(jī)分布曲線與趨勢(shì)大致相同。圖42015級(jí)學(xué)生C語(yǔ)言成績(jī)分布統(tǒng)計(jì)圖52016級(jí)學(xué)生C語(yǔ)言成績(jī)分布統(tǒng)計(jì)通過(guò)實(shí)驗(yàn)表明,利用OnlineJudge的計(jì)算機(jī)課程教學(xué)手段優(yōu)化的教學(xué)班級(jí)各項(xiàng)指標(biāo)都優(yōu)于未使用的班級(jí),充分證明了該系統(tǒng)對(duì)教學(xué)效果具有顯著提升作用。

五、計(jì)算機(jī)課程教學(xué)手段優(yōu)化總結(jié)

針對(duì)目前計(jì)算機(jī)課程教學(xué)實(shí)踐中存在的問(wèn)題,基于OnlineJudge開(kāi)展教學(xué)手段優(yōu)化,以高質(zhì)量、高成效完成計(jì)算機(jī)語(yǔ)言相關(guān)教學(xué)實(shí)踐。一方面極大地釋放了教師的作業(yè)批改與統(tǒng)計(jì)整理負(fù)擔(dān);另外一方面提升了學(xué)生學(xué)習(xí)興趣,對(duì)學(xué)生培養(yǎng)編程興趣、學(xué)習(xí)計(jì)算機(jī)語(yǔ)言、掌握編程實(shí)踐技能,具有重要的意義。實(shí)踐表明,在教學(xué)實(shí)踐中引入OnlineJudge優(yōu)化手段后,學(xué)生的學(xué)習(xí)主動(dòng)性得到大幅提升,課程教學(xué)質(zhì)量也得到較大改善。

參考文獻(xiàn)

[1]陳薈慧,熊楊帆,蔣滔滔,等.基于在線測(cè)評(píng)系統(tǒng)的編程題目難度研究[J].現(xiàn)代計(jì)算機(jī)(專業(yè)版),2018,(13):26-30+34.

[2]黃金春,杜娟嬌.超小型在線評(píng)測(cè)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代計(jì)算機(jī)(專業(yè)版),2018,(13):83-86.

[3]肖紅玉,藍(lán)榮祺,萬(wàn)志強(qiáng).在線評(píng)測(cè)教學(xué)輔助系統(tǒng)設(shè)計(jì)與應(yīng)用[J].電子設(shè)計(jì)工程,2017,(23):11-15.

[4]晏燕.在線編程評(píng)測(cè)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].長(zhǎng)春:吉林大學(xué),2017.

[5]肖紅玉,賀輝,陳紅順.在線評(píng)測(cè)教學(xué)輔助系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2017,(11):141-145.

[6]吳舜歆,梁寶蘭.OnlineJudge在C++程序設(shè)計(jì)課程實(shí)踐教學(xué)中的應(yīng)用[J].高教學(xué)刊,2016,(09):164-167.

作者:任珍文 楊超 印茂偉 吳明娜 劉洋 孫元 單位:西南科技大學(xué)國(guó)防科技學(xué)院