李文全 徐素萍
摘要:針對C語言程序設計課程教學中存在的問題,提出了基于項目式和案例式相結合的混合式教學改革模式。通過程序設計在線評判系統(tǒng),加強了實踐教學環(huán)節(jié),提高了學生編程能力。通過課程網(wǎng)站和在線測試系統(tǒng),豐富了學習資源,提高了學生學習興趣。教學結果表明,教學效果有明顯提高。
關鍵詞:C語言;程序設計;教學改革;教學模式
中圖分類號:TP393 文獻標識碼:A 文章編號:1009-3044(2018)30-0176-02
C語言程序設計是計算機科學與技術、軟件工程、通信工程等專業(yè)的必修課程,是數(shù)據(jù)結構、面向對象程序設計、JAVA程序設計、計算機網(wǎng)絡等后續(xù)專業(yè)課的先導課程,在計算機相關專業(yè)的課程體系中起著重要作用[1]。本課程的教學目的是使學生掌握面向過程的程序設計方法與技巧,訓練基本程序設計的能力,為進一步學習后續(xù)專業(yè)課程和將來從事應用軟件開發(fā)奠定良好基礎。在傳統(tǒng)的以語法知識為主線的教學中,常出現(xiàn)學生上課能聽懂,卻無法獨立編寫程序,動手能力差,學習興趣不高的現(xiàn)象。而該課程是學生接觸的第一門專業(yè)課,課程的教學效果直接影響后繼課程的學習自信和學習熱情。因此,加強C語言程序設計課程的教學改革,提高課程教學質量,是當前專業(yè)課程改革的一項重點任務。
1 教學中存在的問題
在C語言程序設計的實際教學過程中主要面臨以下問題。
1)學生基礎參差不齊
在教學過程中首先遇到的問題是學生基礎參差不齊[2]。主要可分成三類,第一類是在高中階段甚至更早時間就已學習過C語言,如在上大學之前參加過中小學信息應用技術大賽的學生。這類學生在大學學習時,認為老師課堂上講的內容都已學習過,經(jīng)常不認真聽課,不按時完成作業(yè),甚至曠課。而大學的教學要求與高中階段是有較大的不同,最終導致這部分學生在期末綜合考評時,常出現(xiàn)不及格的現(xiàn)象。第二類學生是高中理科基礎好,雖沒有接接觸過C語言,但他們接受能力強,上課認真聽講,課后能按時完成作業(yè),上機能獨立設計與調試源程序,能按正常教學進度學習。這部分學生學習積極,能保質保量地完成教師布置的任務,期末綜合考評時,表現(xiàn)優(yōu)秀的基本是第二類的學生。第三類學生是基礎差,之前基本沒有接觸過計算機。這部分學生學習吃力,難以跟上正常教學進度,上機實驗無從下手。相比已接觸過C語言的同學,理論與實踐學習存在差距,使得他們對課程缺乏學習自信。
2)實踐教學效果不理想
理論教學與實踐教學是兩個相互依存、相互促進的教學體系[3]。在課程設置上,C語言的實踐學時與課堂理論學時應達到1:1,使學生通過上機實踐來檢驗理論學習的效果,通過實踐培養(yǎng)學習興趣。在傳統(tǒng)的教學中,實踐學時得不到保證。并且受實踐條件限制,學生編寫的程序無法檢驗其正確性,程序錯誤得不到老師的及時解答,使得學生無所適從,不能按時完成實踐任務,導致上機實踐難以達到理想效果。
3)獲得實用學習資源有限
在信息化時代,信息以驚人速度在增長,使得學生在網(wǎng)絡中搜索學習資源時,往往是得到大量無用的垃圾信息,需要花大量時間去甄別有用的學習資源。而且網(wǎng)絡中很多資源是必須注冊付費的,使得學生望而卻步。同時,學生在理論學習與程序編寫過程遇到問題時缺少信息交流平臺。
因此,筆者秉承應用型的辦學理念,結合我校C語言程序設計課程的教學實際,針對以上問題,在教學模式、實踐教學、網(wǎng)絡教學、考核評價方面展開了教學改革研究與實踐,并取得了良好成效。
2 改革探索與實踐
2.1 混合式教學模式改革
針對不同基礎和接受能力的學生,在實際教學中采用了基于項目式和基于案例式的混合教學模式。
1)基于項目式的教學模式
項目驅動教學法起源于建構主義學習理論,它鼓勵學生通過真實的工程項目,以項目需求激發(fā)起學生的好奇心,并使學生通過項目主動學習知識,并構建知識體系[4]?;陧椖渴降慕虒W是屬于探究式的教學方法,非常適合曾接觸過C語言的第一類學生。通過工程項目,將課程知識點蘊含于項目的各階段中,驅動學生以階段性需求為目標,主動學習相關知識并探尋解決方案。學生通過問題的解決獲得成就感,從而激發(fā)學習熱情。項目式教學主要包括以下4個階段。
第一階段為準備項目。應依據(jù)學生的實際能力和教學目標要求選擇難度適中,具有一定代表性,在日常學習和工作中容易接觸的工程項目。如果項目難度太大,學生無法完成,容易挫傷學生積極性;如果項目難度過小,達不達訓練的目的,也無法激發(fā)學習動力。選擇好項目后,將項目劃分為若干個相互獨立又相互聯(lián)系的功能模塊,使每個功能模塊都包含大部分的知識點。
第二階段為學生分組。學生根據(jù)自己的興趣愛好,自由分組。每組人數(shù)4-7名,每個小組指定一名組長,組長必須是曾接觸過C語言或接受過培訓的學生。組長的職責是負責整個項目的開發(fā)進度和小組成員間的任務安排,并定期向老師匯報進度;小組成員在組長的帶領下,合作開發(fā)、相互交流、取長補短,共同完成任務。既鍛煉了學生開發(fā)能力,又培養(yǎng)了團隊合作精神。
第三階段是為項目實現(xiàn)。由于普遍存在急于看到項目成果的心理,導致學生會想方設法地解決遇到的各類問題。學生不再完全依賴教師和課本,將主動地去圖書館翻資料,到網(wǎng)上找資源。學生帶著項目需求學習,由傳統(tǒng)的被動接受知識轉變?yōu)橹鲃訉W習。通過完整項目的開發(fā),將課程知識聯(lián)系在一起,融會貫通。教師主要工作是為學生提供建議;幫助學生修訂計劃;協(xié)助解決程序設計中的難題;監(jiān)控項目進度。
第四階段為項目評價。當臨近學期期末,需要對每個小組的作品進行項目評價。組長展示作品并匯報項目總體情況、遇到的問題、解決的方法、收獲等內容;小組成員匯報個人任務、個人完成情況、心得體會等內容。教師根據(jù)每個項目的完成情況進行點評,對于完成較好的作品應當表揚與鼓勵,并引導參加學科競賽。對于存在缺陷的作品,針對不足提出完善建議。教師根據(jù)每個學生的表現(xiàn),給予平時分獎勵。