王國(guó)強(qiáng)+闞紅星+楊松濤+金力
摘要:針對(duì)實(shí)際教學(xué)過(guò)程中發(fā)現(xiàn)的一些問(wèn)題,結(jié)合醫(yī)藥軟件開(kāi)發(fā)專業(yè)的特點(diǎn),提出了一種結(jié)合慕課的C++程序設(shè)計(jì)課程教學(xué)模式。并分別從課前自學(xué)慕課的設(shè)計(jì)、課堂理論教學(xué)的設(shè)計(jì)、課堂實(shí)驗(yàn)教學(xué)的設(shè)計(jì)和課程考核方式的設(shè)計(jì)等方面進(jìn)行了詳細(xì)的闡述。
關(guān)鍵詞:慕課;C++程序設(shè)計(jì)課程;教學(xué)改革
中圖分類號(hào):G642 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)33-0144-03
Abstract: Aiming at some problems in the actual teaching process and the characteristics of medical software development specialty, a teaching mode of C++ programming course combined with MOOC is proposed, which is described in detail from the aspects of the design of self - learning MOOC before class, the design of theory teaching, the design of experimental teaching and the design of course assessment method.
Key words: MOOC; C++ Programming Course; Teaching reform
1 引言
《C++程序設(shè)計(jì)》是高級(jí)語(yǔ)言程序設(shè)計(jì)的一個(gè)入門課程,也是安徽中醫(yī)藥大學(xué)的醫(yī)藥軟件開(kāi)發(fā)專業(yè)本科生的一門必修的基礎(chǔ)課程。這門課的教學(xué)目標(biāo)是使學(xué)生掌握C++程序設(shè)計(jì)語(yǔ)言的基本語(yǔ)法、掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念,學(xué)會(huì)使用C++程序的集成開(kāi)發(fā)環(huán)境,并為后續(xù)的專業(yè)課程學(xué)習(xí)打下堅(jiān)實(shí)的基礎(chǔ)。
傳統(tǒng)的C++程序設(shè)計(jì)課程教學(xué)存在著重理論輕實(shí)踐、學(xué)生學(xué)習(xí)興趣不高、學(xué)生動(dòng)手能力弱等突出問(wèn)題,急需一種新的教學(xué)模式來(lái)提高教學(xué)效果。慕課(Massive Open Online Course, MOOC)是最近興起的一種新的教學(xué)模式,具有很多優(yōu)點(diǎn),結(jié)合慕課進(jìn)行混合式教學(xué)可以很好地解決學(xué)生被動(dòng)聽(tīng)課、學(xué)生對(duì)課堂教學(xué)內(nèi)容理解不透徹、課堂課時(shí)不夠等問(wèn)題[1],也為C++程序設(shè)計(jì)課程的教學(xué)改革提供了一種新的思路。
2 研究背景
2007年,美國(guó)猶他州立大學(xué)的David Wiley教授和加拿大里賈納大學(xué)的Alee Couros教授分別首次提出了慕課的概念,此后基于慕課的教學(xué)改革和教學(xué)模式引起了國(guó)內(nèi)外學(xué)者的廣泛關(guān)注[2]。2012年是慕課快速發(fā)展的一年,目前著名的三大慕課平臺(tái)Udacity、Coursera和edX都在這一年被搭建起來(lái);從2013年開(kāi)始,國(guó)內(nèi)的北京大學(xué)、清華大學(xué)、香港中文大學(xué)也陸續(xù)加盟這三大慕課平臺(tái),并積極開(kāi)展對(duì)基于慕課的教育模式的研究[3]。
相比于傳統(tǒng)的教育模式,基于慕課的新型教育模式具有很多的優(yōu)點(diǎn),比如:學(xué)習(xí)者可以自由選擇學(xué)習(xí)的時(shí)間和地點(diǎn)[1];學(xué)生有不理解的知識(shí)點(diǎn)可以隨時(shí)復(fù)習(xí)之前的慕課,相當(dāng)于接受了老師的單獨(dú)輔導(dǎo)[1];慕課打破了教育的壁壘,使得教育更加公平、公開(kāi),任何人都能獲得世界上最好的教育[4];慕課教育幾乎可以完成傳統(tǒng)教育的一切內(nèi)容:授課、作業(yè)、考試、頒發(fā)證書等[4]。不過(guò),單一的慕課教育模式也存在著一些不足,比如:培養(yǎng)出來(lái)的學(xué)生只追求膚淺的、通用的知識(shí);因?yàn)榭梢远啻沃匦抟婚T課程,學(xué)生缺乏動(dòng)力和壓力等[4]。而將傳統(tǒng)的課堂教學(xué)和慕課相結(jié)合的混合式教學(xué)模式既可以充分發(fā)揮慕課教育的優(yōu)勢(shì),并可以很好地彌補(bǔ)單一慕課教育方式的不足。
C++程序設(shè)計(jì)課程是一門學(xué)習(xí)者眾多、實(shí)用性強(qiáng)的計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言課程,由于此課程的各個(gè)知識(shí)點(diǎn)相對(duì)獨(dú)立和完整,因此非常適合使用慕課的教學(xué)方式[4]。目前,針對(duì)C++程序設(shè)計(jì)課程的慕課教學(xué)模式的研究還比較少。其中,文獻(xiàn)[1]從需求和定位、知識(shí)點(diǎn)劃分、呈現(xiàn)形式等方面介紹了清華大學(xué)“C++語(yǔ)言程序設(shè)計(jì)”慕課[5]的設(shè)計(jì)。文獻(xiàn)[6]從講課視頻的形式和拍攝場(chǎng)所、錄制腳本設(shè)計(jì)、拍攝中的問(wèn)題、視頻后期制作、其他課程資源建設(shè)等方面介紹了清華大學(xué)“C++語(yǔ)言程序設(shè)計(jì)”慕課[5]的拍攝與制作。文獻(xiàn)[2]從課前預(yù)習(xí)和自學(xué)、課堂互動(dòng)式教學(xué)、課后在線研討、作業(yè)和測(cè)試等方面介紹了一種基于慕課的C++教學(xué)改革模式。文獻(xiàn)[7]從教學(xué)方法、教學(xué)模式和綜合評(píng)價(jià)機(jī)制等方面介紹了一種慕課教學(xué)環(huán)境下的C++程序設(shè)計(jì)課程的翻轉(zhuǎn)課堂教學(xué)改革模式。
本文在上述教學(xué)研究的基礎(chǔ)上,結(jié)合安徽中醫(yī)藥大學(xué)醫(yī)藥軟件開(kāi)發(fā)專業(yè)的特點(diǎn)和學(xué)生的具體情況,提出了一種新型的結(jié)合慕課的C++程序設(shè)計(jì)課程教學(xué)模式。
3 結(jié)合慕課的C++程序設(shè)計(jì)課程教學(xué)模式
本文提出的結(jié)合慕課的C++程序設(shè)計(jì)課程教學(xué)模式的框架如圖1所示,其中,主要通過(guò)課前自學(xué)慕課、課堂理論教學(xué)、課堂實(shí)驗(yàn)教學(xué)、課程考核方式四個(gè)方面來(lái)實(shí)現(xiàn)。
3.1 課前自學(xué)慕課的設(shè)計(jì)
首先,將原來(lái)以2個(gè)學(xué)時(shí)為單位的課堂教學(xué)內(nèi)容按照知識(shí)點(diǎn)劃分為多個(gè)小片段,并制作成慕課,以供學(xué)生在課堂教學(xué)之前自主學(xué)習(xí)。每個(gè)慕課控制在5~10分鐘,因?yàn)閷W(xué)生在沒(méi)有班級(jí)同學(xué)陪伴的情況下獨(dú)立學(xué)習(xí)慕課時(shí),很難長(zhǎng)時(shí)間集中精力[1]。例如在設(shè)計(jì)“類的構(gòu)造函數(shù)與析構(gòu)函數(shù)”這一章節(jié)[8]的慕課內(nèi)容時(shí),可以將其劃分為以下七個(gè)知識(shí)點(diǎn):構(gòu)造函數(shù)的作用和定義、帶參數(shù)的構(gòu)造函數(shù)、用參數(shù)初始化表對(duì)數(shù)據(jù)成員初始化、構(gòu)造函數(shù)的重載、帶默認(rèn)參數(shù)的構(gòu)造函數(shù)、析構(gòu)函數(shù)、構(gòu)造函數(shù)和析構(gòu)函數(shù)的調(diào)用順序,并分別制作成七個(gè)慕課。
其次,針對(duì)每個(gè)慕課設(shè)計(jì)相應(yīng)的在線思考題,以引導(dǎo)學(xué)生在學(xué)習(xí)慕課時(shí)主動(dòng)思考并提高學(xué)習(xí)效果。例如可以為“類的構(gòu)造函數(shù)與析構(gòu)函數(shù)”這一章節(jié)的慕課內(nèi)容設(shè)計(jì)如下思考題:①類的構(gòu)造函數(shù)和其它成員函數(shù)的差異有哪些?②使用帶參數(shù)的構(gòu)造函數(shù)的目的是什么?③用參數(shù)初始化表對(duì)數(shù)據(jù)成員初始化有什么好處?④構(gòu)造函數(shù)的重載和一般函數(shù)的重載有什么不同之處?⑤全部是默認(rèn)參數(shù)的構(gòu)造函數(shù)與重載構(gòu)造函數(shù)能否共存?如果不能,原因是什么?⑥類的析構(gòu)函數(shù)能否被重載?如果不能,原因是什么?⑦調(diào)用構(gòu)造函數(shù)和析構(gòu)函數(shù)的順序是相反還是相同?
同時(shí),為每個(gè)慕課設(shè)計(jì)相應(yīng)的在線測(cè)試題,以幫助學(xué)生復(fù)習(xí)和鞏固學(xué)習(xí)內(nèi)容,并幫助老師了解和驗(yàn)證學(xué)生學(xué)習(xí)慕課的效果。在線測(cè)試題可以分為兩種形式:針對(duì)每個(gè)知識(shí)點(diǎn)的選擇題和填空題,并要求在線提交,然后由系統(tǒng)自動(dòng)打分。為了避免學(xué)生之間相互抄襲,可以將在線測(cè)試題設(shè)計(jì)為一個(gè)題庫(kù),每個(gè)學(xué)生進(jìn)行測(cè)試時(shí)隨機(jī)生成測(cè)試題,并且只允許進(jìn)行一次測(cè)試和限制在規(guī)定的測(cè)試時(shí)間內(nèi)完成。
另外,設(shè)置在線討論區(qū),允許學(xué)生在線提問(wèn)、討論和老師答疑。為了提高討論的效果,可以按照知識(shí)點(diǎn)來(lái)劃分討論區(qū),以方便對(duì)同一個(gè)知識(shí)點(diǎn)有疑問(wèn)的同學(xué)一起討論[1]。
3.2 課堂理論教學(xué)的設(shè)計(jì)
目前的課堂理論教學(xué)過(guò)程中主要存在以下問(wèn)題:①過(guò)分注重語(yǔ)法規(guī)則的講解,缺乏對(duì)學(xué)生解決實(shí)際工程問(wèn)題能力的培養(yǎng);②基本上仍是填鴨式教學(xué),讓學(xué)生感覺(jué)枯燥乏味。針對(duì)上述問(wèn)題并結(jié)合慕課,我們重新設(shè)計(jì)了課堂理論教學(xué),具體如下所示:
首先,老師根據(jù)學(xué)生課前自學(xué)慕課的測(cè)試結(jié)果、在線討論區(qū)所反饋的普遍問(wèn)題、以往的教學(xué)經(jīng)驗(yàn)等進(jìn)行重難點(diǎn)的詳解。例如,在課堂上講解“類的構(gòu)造函數(shù)與析構(gòu)函數(shù)”這一章節(jié)的內(nèi)容時(shí),需要詳細(xì)闡述以下幾個(gè)重難點(diǎn):①構(gòu)造函數(shù)的作用:處理對(duì)象的初始化;可以對(duì)比之前使用一般成員函數(shù)來(lái)初始化對(duì)象數(shù)據(jù)成員的方式,讓學(xué)生直觀感受到使用構(gòu)造函數(shù)的便捷。②構(gòu)造函數(shù)與一般成員函數(shù)的區(qū)別:構(gòu)造函數(shù)的名字必須與類名完全相同,構(gòu)造函數(shù)沒(méi)有返回值,構(gòu)造函數(shù)不需用戶調(diào)用也不能被用戶調(diào)用。③帶參數(shù)的構(gòu)造函數(shù)的作用:對(duì)同一個(gè)類的不同對(duì)象賦予不同的初值。④用參數(shù)初始化表對(duì)數(shù)據(jù)成員初始化的好處:方便、簡(jiǎn)練,尤其當(dāng)需要初始化的數(shù)據(jù)成員較多時(shí)更顯其優(yōu)越性。⑤默認(rèn)參數(shù)的構(gòu)造函數(shù)的好處:提供了建立對(duì)象時(shí)的多種選擇,它的作用相當(dāng)于好幾個(gè)重載的構(gòu)造函數(shù);即使在調(diào)用構(gòu)造函數(shù)時(shí)沒(méi)有提供實(shí)參值也不會(huì)出錯(cuò),而且還確保按照默認(rèn)的參數(shù)值對(duì)對(duì)象進(jìn)行初始化。⑥析構(gòu)函數(shù)與一般成員函數(shù)的區(qū)別:不返回任何值,沒(méi)有函數(shù)類型,也沒(méi)有函數(shù)參數(shù),因此它不能被重載,同時(shí)不需用戶調(diào)用也不能被用戶調(diào)用。
其次,老師回答學(xué)生的提問(wèn),并進(jìn)行啟發(fā)式的提問(wèn)請(qǐng)學(xué)生來(lái)回答,這樣既加深了學(xué)生對(duì)知識(shí)點(diǎn)的理解,也帶動(dòng)了學(xué)生的積極性,提高了學(xué)生的興趣,也鍛煉了學(xué)生的語(yǔ)言表達(dá)能力。
最后,采用案例教學(xué)法,選取和學(xué)生的專業(yè)相關(guān)的合適的案例進(jìn)行分析和講解,以培養(yǎng)學(xué)生解決實(shí)際工程中問(wèn)題的能力。比如:針對(duì)醫(yī)藥軟件開(kāi)發(fā)專業(yè)的學(xué)生,可以用醫(yī)院信息管理系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)作為案例,給學(xué)生進(jìn)行講解。
3.3 課堂實(shí)驗(yàn)教學(xué)的設(shè)計(jì)
目前的課堂實(shí)驗(yàn)教學(xué)過(guò)程中主要存在以下問(wèn)題:①大部分學(xué)生滿足于完成老師布置的實(shí)驗(yàn)任務(wù),自覺(jué)深入思考的興趣不大,自主學(xué)習(xí)的熱情不高。②部分學(xué)生懶惰、缺乏學(xué)習(xí)動(dòng)力,使用U盤拷貝其他同學(xué)程序的現(xiàn)象比較多。③對(duì)學(xué)生的工程設(shè)計(jì)能力的訓(xùn)練比較少。針對(duì)上述問(wèn)題,我們采取了如下措施:
1)第一堂實(shí)驗(yàn)課很重要,要讓所有學(xué)生都有成就感。因此,選擇一個(gè)簡(jiǎn)單的題目,先演示給學(xué)生看,然后監(jiān)督學(xué)生上機(jī)模仿練習(xí),并逐一檢查,直到每個(gè)學(xué)生都運(yùn)行成功為止。
2)禁止在機(jī)房使用U盤,機(jī)房中的計(jì)算機(jī)不能上網(wǎng),計(jì)算機(jī)與計(jì)算機(jī)之間不能共享,從而避免學(xué)生之間的相互抄襲。
3)每個(gè)學(xué)生固定一個(gè)機(jī)位,構(gòu)建服務(wù)器,每個(gè)機(jī)位對(duì)應(yīng)服務(wù)器中的一個(gè)學(xué)生文件夾,每個(gè)學(xué)生用的計(jì)算機(jī)只能向服務(wù)器上傳或下載自己的文件夾。每次實(shí)驗(yàn)課結(jié)束之后,自動(dòng)上傳到服務(wù)器的相應(yīng)學(xué)生文件夾,然后系統(tǒng)自動(dòng)評(píng)分,并且不允許下次再修改。
4)每堂實(shí)驗(yàn)課設(shè)計(jì)多道題目,難度逐漸增加,好處是:讓能力強(qiáng)的學(xué)生不會(huì)無(wú)事可做,可以主動(dòng)學(xué)習(xí)更難的內(nèi)容;減少學(xué)生的懶惰心理,避免依賴其它同學(xué);能夠真實(shí)反映每位學(xué)生的實(shí)際動(dòng)手能力,對(duì)學(xué)生的實(shí)驗(yàn)成績(jī)的打分更加公平、公正和公開(kāi)。
5)設(shè)計(jì)和學(xué)生專業(yè)和實(shí)際工程相關(guān)的綜合大作業(yè),由3~5人組成一個(gè)小組利用課余時(shí)間協(xié)作完成,考核方式為課堂演示和答辯,自主選擇其中1人擔(dān)任組長(zhǎng)參與答辯,以項(xiàng)目的完成程度、答辯PPT的制作、口頭表達(dá)能力、回答老師提問(wèn)的準(zhǔn)確程度等來(lái)打分,再由組長(zhǎng)給每個(gè)組員打分并分配一定的權(quán)重。這樣的綜合大作業(yè)可以很好地鍛煉學(xué)生的團(tuán)隊(duì)協(xié)作能力、組織能力和口頭表達(dá)能力。
3.4 課程考核方式的設(shè)計(jì)
目前的課程考核方式主要存在以下問(wèn)題:過(guò)分注重學(xué)生對(duì)理論知識(shí)掌握程度的考核,對(duì)學(xué)生實(shí)踐能力的考核不足;考試成績(jī)高的學(xué)生,動(dòng)手能力卻差等。針對(duì)上述問(wèn)題并結(jié)合慕課,我們?cè)O(shè)計(jì)了一種多元考核方式,以全面考核學(xué)生的多種能力和合理評(píng)價(jià)學(xué)生的學(xué)習(xí)效果。具體的考核指標(biāo)的比重和內(nèi)容如表1所示,主要由以下五個(gè)部分組成:
1)課前慕課自學(xué)的考核:主要考核學(xué)生的自學(xué)能力,比重為10%。主要包括觀看慕課次數(shù)、慕課測(cè)試的結(jié)果和答題時(shí)間長(zhǎng)短、在線討論區(qū)中的提問(wèn)和回答情況等。
2)課堂理論學(xué)習(xí)的考核:主要考核學(xué)生的理論課堂表現(xiàn),比重為10%。包括出勤率、課堂提問(wèn)次數(shù)、課堂回答問(wèn)題的次數(shù)和準(zhǔn)確度等。
3)課堂實(shí)驗(yàn)操作的考核:主要考核學(xué)生的基本動(dòng)手能力,比重為15%。進(jìn)行實(shí)驗(yàn)打分時(shí),不僅要考慮程序是否運(yùn)行通過(guò)、運(yùn)行結(jié)果是否正確,還要考查程序編寫的規(guī)范性、可讀性和健壯性。
4)綜合大作業(yè)的考核:主要考核學(xué)生的工程設(shè)計(jì)能力和綜合能力,比重為15%。學(xué)生進(jìn)行綜合大作業(yè)的答辯時(shí),除了老師提問(wèn)以外,也讓臺(tái)下的同學(xué)們自由提問(wèn),由團(tuán)隊(duì)成員來(lái)回答,根據(jù)制作答辯PPT的質(zhì)量、每個(gè)成員的臨場(chǎng)應(yīng)變能力和口頭表達(dá)能力,以及回答問(wèn)題的準(zhǔn)確性來(lái)評(píng)分。
5)期末考試的考核:主要考核學(xué)生對(duì)基本概念和理論知識(shí)的掌握能力,比重為50%。
4 結(jié)論
本文針對(duì)目前C++程序設(shè)計(jì)課程教學(xué)過(guò)程中存在的突出問(wèn)題,提出了一種結(jié)合慕課的C++程序設(shè)計(jì)課程的新型教學(xué)模式。通過(guò)這樣的教學(xué)改革,可以充分發(fā)揮互聯(lián)網(wǎng)時(shí)代網(wǎng)絡(luò)資源的優(yōu)勢(shì),提高學(xué)生的學(xué)習(xí)興趣,鍛煉學(xué)生的自學(xué)能力、動(dòng)手能力、工程設(shè)計(jì)能力、團(tuán)隊(duì)協(xié)作能力和口頭表達(dá)能力,從而取得更好的教學(xué)效果。
參考文獻(xiàn):
[1] 鄭莉. “C++語(yǔ)言程序設(shè)計(jì)”慕課的設(shè)計(jì)[J]. 計(jì)算機(jī)教育,2015(23):120-122.
[2] 袁友偉,張雪峰,仇建. 基于MOOC的C++教學(xué)改革[J]. 杭州電子科技大學(xué)學(xué)報(bào)(社會(huì)科學(xué)版),2016(4):64-69.
[3] 葉從歡,王光偉,黃蘭英,等. 面向程序設(shè)計(jì)課程的Mooc教學(xué)模式研究[J]. 科技視界,2015(36):80+138.
[4] 王之元,易曉東,李?yuàn)檴?,? 面向MOOC的程序設(shè)計(jì)語(yǔ)言課程教學(xué)設(shè)計(jì)[J]. 計(jì)算機(jī)教育,2014(2):55-58.
[5] 鄭莉. C++語(yǔ)言程序設(shè)計(jì) - 鄭莉 - 清華大學(xué) - 頂你學(xué)堂 - 中文慕課(MOOC)平臺(tái)[EB/OL]. http://www.topu.com/mooc/3704, 2016-10-20.
[6] 鄭莉. “C++語(yǔ)言程序設(shè)計(jì)”慕課拍攝與制作[J]. 計(jì)算機(jī)教育,2016(2):178-182.
[7] 陳晉音,俞山青,毛國(guó)紅. 面向C++程序設(shè)計(jì)課程的翻轉(zhuǎn)課堂教學(xué)改革[J]. 計(jì)算機(jī)教育,2015(19):39-44.
[8] 譚浩強(qiáng). C++面向?qū)ο蟪绦蛟O(shè)計(jì)[M]. 2版.清華大學(xué)出版社, 2014: 68-81.