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

計算機(jī)專業(yè)程序設(shè)計類課程群建設(shè)

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了計算機(jī)專業(yè)程序設(shè)計類課程群建設(shè)范文,希望能給你帶來靈感和參考,敬請閱讀。

計算機(jī)專業(yè)程序設(shè)計類課程群建設(shè)

摘要:學(xué)科競賽是培養(yǎng)和提升計算機(jī)專業(yè)學(xué)生實(shí)踐編程能力和創(chuàng)新能力的重要途徑之一。結(jié)合相關(guān)學(xué)科競賽,構(gòu)建計算機(jī)相關(guān)專業(yè)程序設(shè)計課程群,分析知識的關(guān)聯(lián)性和層次性,優(yōu)化課程群的整體結(jié)構(gòu),搭建在線訓(xùn)練平臺,并合理引入一些競賽題作為教學(xué)實(shí)例和課后習(xí)題,提高學(xué)生的學(xué)習(xí)興趣,取得了良好的教學(xué)效果。

關(guān)鍵詞:學(xué)科競賽;程序設(shè)計;課程群;教學(xué)改革;課程體系

1引言

學(xué)科競賽是培養(yǎng)和提升大學(xué)生綜合能力的重要手段之一,也是促進(jìn)教育教學(xué)改革的重要途徑[1]。對于計算機(jī)等工科專業(yè)而言,參與學(xué)科競賽有助于提高學(xué)生的工程實(shí)踐能力和創(chuàng)新創(chuàng)業(yè)能力,對學(xué)生深造和就業(yè)具有積極的作用,為此,學(xué)科競賽也越來越受到高校師生的關(guān)注和重視,學(xué)科競賽的參與面及參賽成績也成為評估高校本科教學(xué)水平和質(zhì)量的一個重要指標(biāo)[2]。學(xué)科競賽對于促進(jìn)教學(xué)改革和專業(yè)建設(shè)也具有重要意義,將學(xué)科競賽與課程建設(shè)相結(jié)合,優(yōu)化和完善現(xiàn)有課程體系,有助于提升人才培養(yǎng)質(zhì)量。

2結(jié)合學(xué)科競賽的課程群建設(shè)

課程群是由多門彼此獨(dú)立但又關(guān)系密切的課程所組成的一個集合,是為實(shí)現(xiàn)某一培養(yǎng)目標(biāo)由多門性質(zhì)和內(nèi)容相關(guān)或相近的子課程構(gòu)成的一個課程體系[3]。結(jié)合學(xué)科競賽,對計算機(jī)等相關(guān)專業(yè)的程序設(shè)計類課程進(jìn)行合理的優(yōu)化和改革,分析知識點(diǎn)的關(guān)聯(lián)性和層次性,構(gòu)建程序設(shè)計類課程群,推動教育教學(xué)改革[4]。湖南中醫(yī)藥大學(xué)目前有三個計算機(jī)信息類專業(yè),分別是計算機(jī)科學(xué)與技術(shù)、信息管理與信息系統(tǒng)、醫(yī)學(xué)信息工程,基于這三個專業(yè)的培養(yǎng)方案,選取部分核心課程,構(gòu)建“程序設(shè)計類課程群”,核心課程包括《C語言程序設(shè)計》《面向?qū)ο蠹夹g(shù)(Java)》《數(shù)據(jù)結(jié)構(gòu)》和《算法分析與設(shè)計》,我們主要參加的程序設(shè)計類相關(guān)學(xué)科競賽包括中國高校計算機(jī)大賽-團(tuán)體程序設(shè)計天梯賽、藍(lán)橋杯全國軟件和信息技術(shù)專業(yè)人才大賽、CCPC中國大學(xué)生程序設(shè)計競賽、ACM-ICPC國際大學(xué)生程序設(shè)計競賽亞洲區(qū)域賽、全國中醫(yī)藥院校大學(xué)生程序設(shè)計競賽、湖南省大學(xué)生計算機(jī)程序設(shè)計競賽(程序設(shè)計類)等[5]。程序設(shè)計類學(xué)科競賽涉及多門程序設(shè)計類課程所教授的內(nèi)容,例如編程語言基礎(chǔ)知識、字符串的輸入和處理、常用數(shù)據(jù)結(jié)構(gòu)、經(jīng)典算法、數(shù)論、圖論等知識,很多知識都融合在《C語言程序設(shè)計》《面向?qū)ο蠹夹g(shù)(Java)》《數(shù)據(jù)結(jié)構(gòu)》和《算法分析與設(shè)計》等課程中。通過構(gòu)建程序設(shè)計類課程群,對每門課程中每個教學(xué)單元的教學(xué)內(nèi)容和教學(xué)目標(biāo)進(jìn)行剖析,從課程群的角度出發(fā),分析知識的關(guān)聯(lián)性和層次性,避免部分內(nèi)容在多門課程中重復(fù)講授,注意課程內(nèi)容的銜接和難度的遞進(jìn)關(guān)系?!禖語言程序設(shè)計》和《面向?qū)ο蠹夹g(shù)(Java)》要求學(xué)生打好編程基礎(chǔ)、復(fù)習(xí)一些簡單的數(shù)學(xué)知識、訓(xùn)練邏輯思維能力,《數(shù)據(jù)結(jié)構(gòu)》要求學(xué)生掌握常用的數(shù)據(jù)結(jié)構(gòu)和相關(guān)算法并利用這些數(shù)據(jù)結(jié)構(gòu)解決實(shí)際問題,《算法分析與設(shè)計》要求學(xué)生掌握分治算法、貪心算法、動態(tài)規(guī)劃、回溯法和分支限界法等常用算法并學(xué)會靈活使用這些算法解決實(shí)際問題。這些課程的教學(xué)內(nèi)容全部是目前程序設(shè)計類學(xué)科競賽的核心命題范圍,大部分的賽題均圍繞這些知識點(diǎn)來命題。當(dāng)然,也有部分賽題涉及《高等數(shù)學(xué)》《數(shù)值分析》《組合數(shù)學(xué)》《數(shù)論》《計算幾何》等課程的內(nèi)容。因此,結(jié)合相關(guān)程序設(shè)計類學(xué)科競賽來促進(jìn)和檢驗教學(xué)效果,以學(xué)促賽,以賽助學(xué),專業(yè)課程學(xué)習(xí)和學(xué)科競賽相輔相成,相得益彰。為了更好地結(jié)合學(xué)科競賽開展課程教學(xué)工作和課程群建設(shè),我們參照目前ACM大學(xué)生程序設(shè)計競賽的訓(xùn)練和比賽模式,參考學(xué)科競賽模式和兄弟院校的成功經(jīng)驗,搭建了湖南中醫(yī)藥大學(xué)OJ(OnlineJudge,在線判題平臺),申請了校級二級域名,學(xué)生可以在學(xué)校機(jī)房或其他地點(diǎn)利用該平臺做編程實(shí)驗和練習(xí)。目前該平臺已有《C語言程序設(shè)計》練習(xí)題200多道,這些題目也可以作為《面向?qū)ο蠹夹g(shù)(Ja⁃va)》的練習(xí)題。此外,目前平臺還有《數(shù)據(jù)結(jié)構(gòu)》練習(xí)題近100道,《算法分析與設(shè)計》練習(xí)題50多道,練習(xí)題庫還在不斷建設(shè)和完善中。通過引入OJ系統(tǒng),該系統(tǒng)自動對學(xué)生提交的代碼進(jìn)行在線判斷,自動提示所寫程序是否正確。學(xué)生在該系統(tǒng)上以學(xué)號和真實(shí)姓名注冊,任課教師可以隨時跟蹤和了解學(xué)生的做題情況。由于OJ平臺自帶自動判題功能,無需人工批改,可極大降低教師的工作量,而且教師可以通過功能了解學(xué)生的代碼重復(fù)率,了解學(xué)生是否存在抄襲作業(yè)的現(xiàn)象。在后續(xù)我們還將對已有OJ系統(tǒng)進(jìn)行進(jìn)一步完善和擴(kuò)展,可以分析學(xué)生對各個知識點(diǎn)的掌握情況并提供智能推薦功能,為學(xué)生自動推薦練習(xí)題,完善學(xué)生的知識結(jié)構(gòu)體系。除了使用我們自己搭建的OJ系統(tǒng)外,在《數(shù)據(jù)結(jié)構(gòu)》課程教學(xué)中還使用了南陽理工學(xué)院的OJ,在《算法分析與設(shè)計》課程教學(xué)中還使用了國內(nèi)知名度最大的兩個OJ系統(tǒng),分別是北京大學(xué)的POJ和杭州電子科技大學(xué)HDU[6]。目前很多企業(yè)的招聘筆試和高校的研究生復(fù)試也采用類似OJ系統(tǒng)在線做題和判題,因此,在OJ系統(tǒng)上做題可以讓學(xué)生提前為后續(xù)求職和深造的在線筆試熱身。此外,我們結(jié)合課程知識點(diǎn)選取部分賽題作為課程練習(xí)題和考試題。通過分析歷屆湖南省大學(xué)生計算機(jī)程序設(shè)計競賽(程序設(shè)計類)、全國中醫(yī)藥院校大學(xué)生程序設(shè)計競賽、藍(lán)橋杯全國軟件和信息技術(shù)專業(yè)人才大賽等競賽的真題,選取一部分難度合適的題目作為日常教學(xué)的案例或者練習(xí)題。以湖南省大學(xué)生計算機(jī)程序設(shè)計競賽為例,在講授《C語言程序設(shè)計》的“C語言表達(dá)式和控制流程”時要求學(xué)生完成第六屆競賽A題“汽水瓶”和B題“弟弟的作業(yè)”、第七屆競賽B題“報數(shù)游戲”、第八屆競賽A題“三家人”、第九屆競賽J題“搞笑版費(fèi)馬大定理”、第十一屆競賽B題“大還是???”和J題“又一道簡單題”等賽題,這些題目難度較小,在程序設(shè)計競賽中屬于簡答題,部分賽題既考查了學(xué)生的編程基礎(chǔ)又考查了學(xué)生的思維能力,是非常好的編程基礎(chǔ)訓(xùn)練題;在講授“字符和字符串處理”時要求學(xué)生完成第六屆競賽C題“數(shù)字整除”、第七屆競賽A題“一二三”、第八屆競賽B題“機(jī)器人的指令”、第十屆競賽C題“酷酷的單詞”和第十一屆競賽H題“聊天止于呵呵”等賽題;在講授“數(shù)組”時要求學(xué)生完成第九屆競賽C題“字符識別?”。在《數(shù)據(jù)結(jié)構(gòu)》課程中講授最短路徑Floyd算法時引入第六屆競賽的G題“RepairingaRoad”,講授最短路徑Dijkstra算法時,引入第十一屆競賽的E題“簡單的圖論問題?”詳細(xì)講解Dijkstra算法的應(yīng)用,結(jié)合第八屆競賽F題“Kingdoms”講解最小生成樹算法。程序設(shè)計競賽中其中一個重要的命題領(lǐng)域是計算機(jī)算法的掌握與運(yùn)用,因此,在《算法分析與設(shè)計》課程中可以將歷屆競賽中部分相關(guān)賽題作為課堂講解實(shí)例或課后練習(xí)題,例如結(jié)合第七屆競賽F題“打怪升級”和第八屆競賽J題“病毒”等賽題講解動態(tài)規(guī)劃算法,結(jié)合第八屆競賽H題“TinCutterII”和第十屆競賽K題“Kicktheball!”等講解搜索算法中的回溯法,結(jié)合第十屆競賽I題“殘缺的棋盤”等講解搜索算法中的分支限界法。大部分賽題都基于一些具體問題命制,題目質(zhì)量較高,是非常好的教學(xué)實(shí)例和課后習(xí)題。在程序設(shè)計類課程的教學(xué)過程中引入這些競賽真題,讓學(xué)生了解競賽的形式和命題風(fēng)格,有助于競賽的準(zhǔn)備,同時也可以更好地為教師的教學(xué)工作服務(wù)。課程群的建設(shè)和優(yōu)化還有助于更好地組建學(xué)科競賽指導(dǎo)教師團(tuán)隊,相關(guān)課程的任課教師可以從不同角度對參賽學(xué)生及團(tuán)隊進(jìn)行指導(dǎo)。在程序設(shè)計類學(xué)科競賽的賽題中,既包含一些簡單的字符串處理和基礎(chǔ)數(shù)學(xué)題,也會有一些考查棧、隊列、二叉樹、圖等的數(shù)據(jù)結(jié)構(gòu)題,還會有一些考查分治算法、動態(tài)規(guī)劃、貪心算法、回溯法和分支限界法等經(jīng)典算法的賽題。因此,對于程序設(shè)計類競賽而言,在平時的集訓(xùn)和賽前輔導(dǎo)中,承擔(dān)《C語言程序設(shè)計》《數(shù)據(jù)結(jié)構(gòu)》《算法分析與設(shè)計》等課程教學(xué)任務(wù)的教師可以各自負(fù)責(zé)部分所擅長內(nèi)容的競賽輔導(dǎo)工作,充分利用當(dāng)前已有的OJ系統(tǒng),指導(dǎo)學(xué)生參加學(xué)科競賽并取得好成績,實(shí)現(xiàn)以競賽促進(jìn)教學(xué),通過教學(xué)反哺競賽的目的。

3實(shí)施效果

通過學(xué)科競賽促進(jìn)計算機(jī)專業(yè)程序設(shè)計類課程建設(shè)取得了一系列成果,《C語言程序設(shè)計》《面向?qū)ο蠹夹g(shù)(Java)》、《數(shù)據(jù)結(jié)構(gòu)》和《算法分析與設(shè)計》等課程教學(xué)質(zhì)量和學(xué)生整體成績有所提升,學(xué)生的教學(xué)評價滿意度同時也得到提升。近三年來,湖南中醫(yī)藥大學(xué)學(xué)生參加中國高校計算機(jī)大賽-團(tuán)體程序設(shè)計天梯賽、藍(lán)橋杯全國軟件和信息技術(shù)專業(yè)人才大賽、CCPC中國大學(xué)生程序設(shè)計競賽、ACM-ICPC國際大學(xué)生程序設(shè)計競賽亞洲區(qū)域賽、全國中醫(yī)藥院校大學(xué)生程序設(shè)計競賽、湖南省大學(xué)生計算機(jī)程序設(shè)計競賽(程序設(shè)計類)等學(xué)科競賽取得了一系列突破,多次獲得省部級及國家級獎項。例如,湖南中醫(yī)藥大學(xué)代表隊在2018年“中國高校計算機(jī)大賽-團(tuán)體程序設(shè)計天梯賽”全國總決賽中獲得三等獎和湖南省二等獎;2018年獲中國大學(xué)生程序設(shè)計競賽女生專場銀獎一項和中國大學(xué)生程序設(shè)計競賽全國邀請賽(湖南)銅獎兩項;近三年來有40多人次獲得藍(lán)橋杯全國軟件和信息技術(shù)專業(yè)人才大賽湖南賽區(qū)C++和Java軟件開發(fā)大學(xué)組三等獎及以上,多名同學(xué)獲得湖南賽區(qū)一等獎并晉級全國總決賽,在全國總決賽中獲得二等獎和三等獎多項;近三年在湖南省大學(xué)生計算機(jī)程序設(shè)計競賽中獲得三等獎及以上10多項,獲得全國中醫(yī)藥院校大學(xué)生程序設(shè)計競賽一等獎和二等獎共7項。學(xué)生的編程能力和動手實(shí)踐能力有明顯增強(qiáng),在參賽學(xué)生中,多名學(xué)生保送或者考取哈爾濱工業(yè)大學(xué)、中南大學(xué)、湖南大學(xué)等知名高校碩士研究生,部分學(xué)生就職于百度、騰訊等知名企業(yè),人才培養(yǎng)質(zhì)量得以顯著提升。

4結(jié)語

以學(xué)科競賽促進(jìn)課程群建設(shè),以課程群促進(jìn)學(xué)科競賽的開展,相輔相成,相互促進(jìn),取得了良好的效果。通過學(xué)科競賽,對《C語言程序設(shè)計》《面向?qū)ο蠹夹g(shù)(Java)》《數(shù)據(jù)結(jié)構(gòu)》和《算法分析與設(shè)計》等課程的教學(xué)目標(biāo)、教學(xué)內(nèi)容、重難點(diǎn)等進(jìn)行重新梳理,構(gòu)建更為科學(xué)合理的程序設(shè)計類課程群,并在課程教學(xué)過程中引入競賽所采用的OJ在線判題平臺,提高學(xué)生的學(xué)習(xí)興趣,教師可以更好地跟蹤和監(jiān)控學(xué)生的學(xué)習(xí)和練習(xí)情況。在教學(xué)過程中結(jié)合歷屆相關(guān)賽事的真題作為講解實(shí)例和課后練習(xí),讓學(xué)生可以了解競賽的形式和內(nèi)容。結(jié)合學(xué)科競賽推進(jìn)計算機(jī)專業(yè)程序設(shè)計類課程群建設(shè),可以更好地優(yōu)化現(xiàn)有課程體系,增強(qiáng)學(xué)生的動手實(shí)踐能力和問題解決能力,有助于提升教學(xué)效果和人才培養(yǎng)質(zhì)量。在今后的工作中,將進(jìn)一步完善現(xiàn)有的賽題庫和練習(xí)題庫,優(yōu)化和完善現(xiàn)有OJ在線判題平臺的功能,增加習(xí)題推薦和學(xué)生知識結(jié)構(gòu)分析評估等模塊,完善現(xiàn)有的教學(xué)大綱和培養(yǎng)方案,更好地發(fā)揮學(xué)科競賽在人才培養(yǎng)中的作用,促進(jìn)新工科建設(shè)。

參考文獻(xiàn):

[1]王曉勇,俞松坤.以學(xué)科競賽引領(lǐng)創(chuàng)新人才培養(yǎng)[J].中國大學(xué)教學(xué),2007(12):59-60.

[2]趙春魚,吳英策,魏志淵,等.高校學(xué)科競賽:現(xiàn)狀、問題與治理優(yōu)化——基于2012-2016年本科院校學(xué)科競賽評估的數(shù)據(jù)分析[J].中國高教研究,2018(2):69-74.

[3]龍春陽.課程群建設(shè):高校課程教學(xué)改革的路徑選擇[J].現(xiàn)代教育科學(xué),2010(3):139-141.

[4]韓郁蔥,宗瑜,陳家俊.應(yīng)用型本科計算機(jī)專業(yè)課程群建設(shè)研究[J].合肥學(xué)院學(xué)報(綜合版),2012,22(4):57-59.

[5]劉偉,丁長松,黃辛迪.基于學(xué)科競賽的計算機(jī)類課程實(shí)踐教學(xué)改革探索與研究[J].時代教育,2017,(4):63-65.

[6]劉偉,丁長松.“算法分析與設(shè)計”課程教學(xué)改革與實(shí)踐[J].工業(yè)和信息化教育,2017(3):62-65.

作者:劉偉 黃辛迪 單位:湖南中醫(yī)藥大學(xué) 信息科學(xué)與工程學(xué)院