程序設計基礎教學改革研究
時間:2022-11-12 11:44:14
導語:程序設計基礎教學改革研究一文來源于網(wǎng)友上傳,不代表本站觀點,若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。
摘要:針對應用型本科院校程序設計基礎課程教學的現(xiàn)狀,提出在授課過程中采用理論與實踐相結合的模式,并將MOOC作為課堂教學的補充引入教學過程中,基于OnlineJudge實踐平臺,介紹實踐教學模式與考核方式的改革,并說明改革效果。
關鍵詞:工程教育專業(yè)認證;MOOC;OnlineJudge實踐平臺
工程教育專業(yè)認證標準要求教育活動要堅持“以學生為中心”“產(chǎn)出導向”和“持續(xù)改進”的理念[1],要以學生的畢業(yè)要求和學生畢業(yè)后5年的培養(yǎng)目標為導向開展。程序設計基礎作為專業(yè)基礎核心課之一[2],需要支撐多個畢業(yè)要求指標點。目前高校的程序設計基礎課程普遍存在教學模式落后、內容枯燥,與工程實際脫節(jié),缺乏與相關專業(yè)工程背景有效結合[3],學生缺乏學習興趣,教師是教學活動主體,學生只是被動地接受,很少參與課堂中,缺乏對學生的啟發(fā)教育等問題[4],達不到工程教育專業(yè)認證標準。程序設計基礎要以產(chǎn)出為導向,要結合社會對人才需求與應用型本科院校的人才培養(yǎng)宗旨,因此可以采用理論與實踐相結合的授課模式,通過實踐訓練,培養(yǎng)學生分析問題能力和解決問題能力,而不是單純地去學知識點。在教學過程中需要以學生為中心,通過構建MOOC資源,激發(fā)學生的自主學習行為,讓學生從“我學程序設計基礎”到“我用程序設計基礎”甚至是“我玩程序設計基礎”。OnlineJudge實踐平臺的自動判斷功能可即時判斷學生編程的正確性,并給出錯誤提示,使學生在編程練習時得到成就感,提高編程興趣。另外該實踐平臺可分析各知識點得分率,做到教學過程留痕,使教師可適時調整自己的教學方案,達到更好的教學效果。
1工程教育專業(yè)認證標準下課程目標
依據(jù)中國工程教育專業(yè)認證標準設置了課程目標,能夠支撐工程教育專業(yè)認證標準指標點,具體的對應關系見表1。
2更新教學方法
2.1利用理論與實踐相結合的授課模式。根據(jù)工程教育專業(yè)認證的理念,課程實踐環(huán)節(jié)的目標主要培養(yǎng)學生的實踐動手能力以及根據(jù)所學知識解決復雜工程問題的能力。傳統(tǒng)的教學方式分為理論課和實踐課兩部分。在授課過程中發(fā)現(xiàn),理論課堂上,大部分學生還是能夠聽懂的,但是一到實踐課時,學生不會應用學過的理論知識,極少人能進行上機實驗。針對這種情況,應采用理論與實踐相結合的授課模式,將課堂搬到多媒體機房,每人一臺電腦,理論課堂不再是教師單純地講理論和實例,而是根據(jù)學在生需要,隨時在講課和編程實踐之中切換,并且這種理論和實踐相結合的教學方式下,學生的編程進度差別不會太大,也會方便教師及時對學生進行指導?!凹埳系脕斫K覺淺,絕知此事要躬行”,例如講完for語句的用法后,直接讓學生進行上機實驗。通過這種方式,既可加深學生對知識的理解,又能鍛煉實踐能力。2.2采用互動式教育。教學要堅持“以學生為中心”,要想方設法地提高學生的參與度。采用案例式、問題驅動式、啟發(fā)式和參與式等模式,以打破傳統(tǒng)的“填鴨式”教學方式,提高學生的學習積極性和主動性。在授課時,需提前備好可以和學生互動的思考題,引導學生積極思考,調動起學生學習的興趣。一些知識點的講解也很適合與學生互動,如在講解了按位與的特點之后,讓學生思考其如何應用,怎么輸出一個整數(shù)的最高位。有了這樣的啟發(fā),可以增強學生課堂的參與度,師生進行互動,活躍課堂氣氛。2.3答疑與探討。課堂上,在講授完知識點、學生進行編程練習后,教師及時總結問題,并給學生提問和探討的機會,加深學生印象。課堂下,通過組建qq群的方式,學生在群內可以自由討論,老師也會對問題進行講解。2.4引導學生自主學習。學生存在差異性,在教學過程中,老師需要充分調動每位學生思考的積極性,不僅強調重點基礎知識的講授,還需適當融入學科前沿知識和研究熱點,引導學生學會關注領域動態(tài),可以彌補傳統(tǒng)教學的不足,極大地提高學生學習興趣,讓學生體會學以致用的成就感,并以此為動力形成終身學習的能力。
3慕課建設
目前,慕課中國、中國大學MOOC等在線開放課程平臺中的程序設計基礎課程大多數(shù)是985和211院校開設的,由于應用型本科院校對教學課程要求的差異、學生整體素養(yǎng)的差異以及對課程難易的接受程度的差異,上述慕課不適合應用型本科院校,因此為了達到較好的教學效果,需針對本校學生特點設計慕課。3.1碎片化設計思路構建MOOC的目的是作為課堂教學的一種補充,使學生可以隨時隨地充分利用自己零星的業(yè)余時間,因此MOOC的設計可采用碎片化的設計思路。碎片化就是將完整的東西破成諸多零塊,對課程而言,將其拆分成許多知識點的過程,就是將課程進行碎片化設計。程序設計基礎MOOC課程的碎片化設計思路是圍繞教學目標進行“自頂向下”的內容設計:頂層是章,整個課程需要劃分成哪些章;第2層是節(jié),即每章又需要劃分哪些節(jié);第3層為碎片,每節(jié)按照問題的引入、展開和案例分析等劃分成多個碎片,每個碎片通過相對獨立的6~10分鐘的短視頻來實現(xiàn),這種短視頻不僅可讓學生充分利用課余時間,而且可將學生的注意力保持在峰值水平。3.2教學互動環(huán)節(jié)的設計MOOC課程的師生互動環(huán)節(jié)的實現(xiàn),采用視頻內插入提問、視頻間插入測驗以及討論區(qū)等方式。MOOC視頻內插入提問的目的主要是刺激學生的注意力,將學生可能開始懈怠的思維拉回主題。MOOC中所有在看視頻的學生都會被打斷,必須進行思考,回答完問題才能繼續(xù)。視頻間插入測驗的目的是使學生通過測驗,可以檢查自己對前面的視頻中知識點的理解和掌握程度,及時發(fā)現(xiàn)問題,以便重新觀看學習。討論區(qū)一般在一個主題學習結束后,話題是視頻講解內容的深入延伸,供學生課后思考討論。討論區(qū)的互動先是學生之間的展開,然后教師和助教再介入,點評學生的回答。
4基于OnlineJudge的實踐教學
程序設計基礎是實踐性比較強的課程,上機實踐是非常重要的環(huán)節(jié)。本課程可以由ACM國際大學生程序設計競賽在線判斷系統(tǒng)改造、擴充的OnlineJudge系統(tǒng)作為實踐平臺。4.1題庫建設。ACM在線評測系統(tǒng)中絕大多數(shù)題目都需要比較高深的算法,如果直接采用此類題目,會打擊學生的積極性,不太適合程序設計基礎課程教學。為了能夠增強學生實踐興趣,使學生在編程練習時經(jīng)常獲得挑戰(zhàn)成功的成就感,進而提髙編程的興趣和分析、解決問題的能力,教師自編數(shù)百道編程題目,在題目中都會給出一些現(xiàn)實背景,并在出題時將題庫中的題目進行難度區(qū)分,難度分為5顆星,3星及以下題目分為必做題,3星以上為挑戰(zhàn)題,其中必做題是為了使學生掌握相關知識點必須完成的題目,而挑戰(zhàn)題則是對學有余力的學生為進一步拓展程序思維而準備的題目。在學生編程時,會顯示題目星級,如果題目答不上來,也不會打擊學生的自信心,如果答對了,會使學生更有成就感,從而提高學習興趣。除了編程題之外,題庫中還包括選擇題、填空題及判斷題等類型題目,能夠幫助學生打好堅實的理論基礎。4.2實踐教學模式開展。傳統(tǒng)的實踐教學是學生直接將代碼交給教師,在大班上課的情況下,教師檢查代碼的工作量是非常巨大的,很難對每個人的問題進行反饋,學生錯誤得不到及時更正,也會對后續(xù)學習造成影響。利用OnlineJudge自動評測系統(tǒng),在平臺上進行實踐練習,教師給學生布置題目,學生在規(guī)定時間內做題并提交代碼后,系統(tǒng)可以馬上自動判斷正確與否,如果沒有調試通過的則給出錯誤提示,學生進一步調試修改程序,直至被接收為止。這種實踐方式可使學生快速得到反饋,及時更正錯誤,還能夠分析各知識點得分率、匯集錯題發(fā)送給學生、查看學生代碼以及代碼重復率,了解學生是否獨立完成,使教師及時發(fā)現(xiàn)和解決學生的共性問題,并對學生個性問題單獨輔導,增強對學生的指導。這種實踐方式可以使教學過程留痕,便于老師總結教學經(jīng)驗,屬于一個持續(xù)改進的過程。4.3課堂測試。應用型本科院校的學生總是存在部分學習主動性差,想蒙混過關的。為了激發(fā)此類學生的學習積極性,可以采用分數(shù)驅動的方式,不定期地在課堂上進行OnlineJudge測試。對于達不到要求的同學,重點關注,扣除部分平時成績,但也會給學生“復活賽”機會,利用“復活賽”,刺激后進同學的學習主動性。
5考核模式改革
傳統(tǒng)的考核方式是平時成績+采用筆試的方式,平時成績主要依據(jù)出勤率,筆試主要側重于學生基本知識的考核,這對于實踐性較強的課程來說,都屬于紙上談兵。在工程教育專業(yè)認證的標準下,不能很好地對學生的相關能力進行評價。為改進課程考核制度,采用教學過程中的全程化多維度的考核方法,分階段、分目標、分形式,以達到對學生計算思維、學習過程和能力培養(yǎng)的多方面考核。課程成績可由以下部分組成:3階段的上機考試成績、課堂表現(xiàn)、作業(yè)成績、問題分析能力、實驗動手能力和表達能力等。其中,3次上機考試成績分別占課程成績20%、25%與30%,課堂表現(xiàn)、作業(yè)成績、問題分析能力、實驗動手能力和表達能力分別各占課程成績5%。首先,應根據(jù)課程目標、課程內容、課程任務以及對應支撐的指標點來確定相應部分的分數(shù)值、考核形式和評分依據(jù)等內容。再將1個學期分為3個階段,每個階段的考核都利用上機考試的方法進行,該方法能夠對學生的計算思維能力、分析問題動手編程和調試程序解決問題的能力進行有效考核。另外通過實踐過程中遇到問題的解決辦法和實驗效果演示等方面的自我說明,結合教師的隨機提問,也能夠給出相應的能力考核結果。
6改革效果
6.1學生積極性提高。根據(jù)OnlineJudge平臺統(tǒng)計,教學改革后,不同層次學生在一學期中進行實踐訓練的情況見表2。學生課上實驗的積極性、參與度、專注度、達成度均顯著提升,課下進行實驗練習參與度達到98%以上,而且實踐練習的代碼重復率也明顯減低。某學生實踐練習過程如圖1所示。6.2學生實際能力顯著增強。通過調查問卷的方式,得到后續(xù)課程老師反映,大部分學生編程習慣較好,代碼格式和變量命名等規(guī)范率提高,有加注釋習慣,動手能力增強。另外,學生參加ACM程序設計大賽、藍橋杯等競賽的成績也有了明顯進步。6.3教學過程留痕,有利于持續(xù)改進?;贠nlineJudge的教、學、練、考、賽一體化的實際平臺,能夠保留教學過程的一些原始數(shù)據(jù),便于教師掌握學生情況,為后續(xù)教學改進提供依據(jù)。教學過程保留示意圖如圖2所示。
7結語
依據(jù)中國工程教育專業(yè)認證標準設計程序設計基礎課程目標,理論與實踐相結合的授課模式,MOOC資源作為課堂教學的補充,教、學、練、考、賽一體化的實踐平臺,這些都拓寬了學生學習的空間和時間維度,激發(fā)了學生學習的主動性,取得了良好的教學效果。但是需要改進的地方仍有很多,我們會繼續(xù)努力,堅持以學生為中心,以產(chǎn)出為導向,持續(xù)改進教學方法。
參考文獻:
[1]鄧春燕,周治國,陳娟,等.工程教育認證背景下程序設計基礎課程設計教學改革與實踐[J].計算機教育,2019(5):68-72.
[2]張延亮,康國棟,周清平.工程教育認證標準視角下軟件工程專業(yè)課程教學改革探索與實踐:以“C語言程序設計基礎”課程為例[J].煤炭高等教育,2018,36(5):117-121.
[3]汪天友.應用型本科專業(yè)C語言教學問題與慕課融合式教學改革策略研究[J].教育教學論壇,2018(39):260-261.
[4]梁冰,馮林,杜猛,等.數(shù)據(jù)結構與算法課程面向實踐的教學方法研究[J].計算機教育,299(11):73-76.
作者:曹旗磊 王涵 王金鵬 單位:山東工商學院計算機學院