正文 基於非計算機專業《C++程序設計》的教學改革探索(1 / 2)

基於非計算機專業《C++程序設計》的教學改革探索

教改研究

作者:張豔華等

摘 要: 隨著現代教育技術的發展與教育教學理念的更新,現代化的教學方式作為傳統教學方式的有益補充,發揮了重大作用。本文以C++程序設計這門課為例,從教學建設、教學內容、教學方法、實驗內容、考核方式等方麵闡述教學改革取得的積極效果。

關鍵詞: 教學改革 《C++程序設計》 教學平台

C++是近年來國內外廣泛使用的現代計算機語言,它既支持基於過程的程序設計,又支持麵向對象的程序設計[1]。在高校的多個專業都開設C++程序設計課程,但是C++涉及的概念很多,語法比較複雜,並且內容十分廣泛,有不少專業的學生既沒有計算機的基礎知識,又沒有足夠的學時,這樣使不少學生感到學習難度較大。本文以車輛專業開設的C++課程為例,闡述教學改革的過程及取得的教學效果。

1.合理選擇開發環境

C++課程教學需要合適的軟硬件環境,鑒於Window 7,Window 8下VisualC++6.0兼容性問題,教學過程中選擇Code::Blocks作為編譯器。Code::Blocks是一個開放源碼的全功能的跨平台C/C++集成開發環境。由純粹的C++語言開發完成,它使用了著名的圖形界麵庫wxWidgets版,Code::Blocks提供了許多工程模板,其中有:控製台應用、DirectX應用、動態鏈接庫、FLTK應用、GLFW應用、Irrlicht工程、OGRE應用、OpenGL應用、QT應用、SDCC應用、SDL應用、SmartWin應用、靜態庫、Win32GUI應用、wxWidgets應用、wxSmith工程。另外,它還支持用戶自定義工程模板。Code::Blocks支持語法彩色醒目顯示,支持代碼完成,支持工程管理、項目構建、調試,便於學生做基於控製台應用的程序調試。

2.優化教學內容

目前我校使用的教材為清華大學出版社出版的譚浩強老師的C++程序設計(第2版),此教材內容全麵,知識點的講解很透徹。但是有些難點學生的理解仍然存在困難,再加上學時有限(48學時),所以教師在內容上進行優化,既要講解基本知識、重點內容,又要做到讓學生跟上教師的節奏,把內容掌握好,以夠用為尺度精選講授內容,對於指針數組與指向指針的指針、用戶自定義數據類型、運算符的重載直接不再講授。對某些知識點挖掘得不是太深,這樣有利於學生對這門課程的整體掌握。

3.精選實驗內容

C++是實踐性很強的一門課程,學生通過實驗可以加深對問題的理解,因為實驗的學時安排有限(16學時),所以必須對實驗項目進行精選,安排學生掌握最基本最重要的內容,如選擇結構、循環結構、掌握函數、掌握數組、掌握指針、掌握類對象、掌握繼承與派生、掌握多態與虛函數,同時分組完成課外的提高題。但對有餘力的學生鼓勵做ACM中的習題,同時給予相應的指導。此環節重點培養學生獨立分析問題、獨立解決問題及團隊協作能力。

4.教學方法的改進

在教學中注重列舉身邊的例子,如在講解類的定義時,我們定義了學生類幫助學生進行理解,以此提高學生學習知識的興趣,也注重引進案例教學。但是,傳統教學方法仍有一定的局限性,易受到時間空間的限製。再加上車輛專業的學生沒有計算機的基礎知識,在問題的理解上需要花費更多的時間,而教學學時有限,如何在有限的時間內掌握應該掌握的甚至是更多的知識,輔助教學方式的應用顯得尤為重要。

筆者選擇了網絡教學平台作為輔助教學方式,此平台以課程為核心,每個教師都有獨立的教學區,每個課程都有獨立的學習區;其主要作用是讓教師通過課程的管理,教學內容的設計,作業的布置,在線的評測,達到過程監控、增強教學效果、促進師生交流、完善自我評價的目的。此平台包括課程介紹、教學大綱、教學日曆、教學材料、答疑討論、課程問卷、教學郵箱、教學筆記、課程作業、試題試卷庫、在線測試、課程管理等模塊。

首先課程介紹模塊,是對課程的一個總體介紹,從中學生可以獲得對這門課的總體認識。教學大綱是更進一步指出本門課程需要掌握哪些內容,哪些是重點,哪些是難點,考核的重點難點考核的方式,讓學生一開始就做到心中有數。並且教學日曆中包含本課程的教學進度,可以讓學生按照進度提前做好預習。