陳丹丹,門洪,關碩,倫向敏,趙君
(東北電力大學自動化工程學院,吉林吉林132012)
基于C++Builder的面向對象程序設計課程是測控專業一門重要的專業課,同時也是一門技術基礎課。該課程理論與實踐結合得比較緊密,尤為強調學生的實際動手能力。它的教學效果直接影響到學生實踐技能的培養以及后續專業課程的學習[1]。以往課程的教學模式,大都是以程序語言自身的體系為脈絡展開教學,再輔助以少量學時的幾個實驗。實驗項目設置也比較單調片面,絕大部分屬于驗證組件屬性和方法的實驗,缺少與專業相關的應用型實驗。由于這種教學模式不是以解決實際工程應用問題為目的展開,學生難以在學習中獲取實際項目開發經驗。如此以來,勢必給學生造成一種錯覺,認為程序設計類課程實用性不強,不能應用于專業實際,最終導致學生的學習熱情降低,教學效果不理想[2]。因此,傳統的教學內容與授課模式,已滿足不了培養工程型人才的需要。如何改進教學方法,提高教學效果,增強學生的軟件編程專業技能,顯得尤為重要。
課程的學習圍繞一個具體測控系統開發過程展開,將教學內容重組,形成一個個單一模塊,每一模塊分別確定相應的教學目標,教學重點及難點,并分離出與之對應的理論和實踐內容[3]。各模塊的設置依據上位機軟件系統開發流程,每個模塊分別解決該測控系統開發過程中的一部分,最后將各模塊以“搭積木”的方式進行組合,完成一個完整的測控系統開發。
變更授課地點,把學生從合班教室帶入到實驗室機房,調整理論與上機學時比例為1 1,利用邊講邊練的授課模式開展教學。將理論內容融入到每個教學模塊中,使學生在上機實踐中消化理解抽象的理論知識。學生每次上機都可解決測控系統開發過程中的一個模塊,可激發學生學習興趣,保證教學質量。
考評體系包括四大部分:理論部分占20%,模塊考核部分占50%(五個模塊各占10%),綜合應用部分占20%,平時表現部分占10%。每一模塊授課結束,引入相關評價機制,進行一次模塊考核。當整個課程教學結束后,要求實現某一測控系統的設計,并進行綜合應用部分考核。最后,進行紙制化理論考核。這樣當最終完成真實測控系統開發時,教學任務也同步完成[4]。
將一個具體的測控系統設計項目引入面向對象程序設計課程教學,學生通過完成預先設置好的模塊化實驗項目,可逐步達到測控系統設計目標,從而掌握開發測控系統涉及到的上位機軟件系統編程方法,獲取開發經驗。如以電廠鍋爐水溫控制系統設計項目為例,鍋爐水溫信號可由單片機提供,學生應用面向對象語言C++Builder6.0中的相關組件編程實現將單片機的控制的鍋爐水溫數據顯示在PC上,完成單片機與PC機的通信。而且在控制過程中采集到的數據要求學生使用數據庫管理,數據庫應用程序的編程能力也得到進一步擴展。具體實施方法將按照測控系統開發流程大致分為五個模塊:
(1)用戶管理模塊,用于講授常用控件、菜單和工具欄、文件管理組件等內容,使學生了解用戶管理界面的設計。
(2)數據采集模塊,使學生掌握如何使用常用控件進行參數的設置。
(3)通信控制模塊,用于講授串口通信控件,使學生掌握如何利用軟件控制單片機,將單片機控制或運行結果顯示在計算機屏幕上。
(4)顯示模塊,用于講授圖形和圖表控件,使學生可以分析數據,繪制數據的曲線圖和狀態圖等。
(5)數據處理模塊,用于講授數據控制組件、數據訪問組件及報表組件等數據庫常用組件,使學生掌握利用數據庫組件進行數據的整理和保存。
在實驗項目的設置上,力求以培養學生測控系統設計能力為目標,努力提高學生的實踐動手能力和高級語言編程能力?,F將本課程以往實驗項目與改進的實驗項目進行對比如下,如表1和表2所示[5]。

表1 課程以往實驗項目設置

表2 課程改進實驗項目設置
結合表1和表2可以看出,以往的實驗項目大多為驗證性實驗,而且實驗中涉及的組件也只是一些基本通用的組件,這種實驗不利于學生專業技能的培養??紤]到面向對象技術的開發工具涉及到的組件數量非常多,教學中不可能全面覆蓋,而且從組件應用角度來看,其原理是相同的,可以舉一反三,沒有必要面面俱到。因此,改進的實驗項目,在內容設置上,壓縮了驗證性實驗比例,有選擇性的針對專業特點和實際應用,選取與專業相關的組件進行講授,如增加設計測控系統涉及到的組件用法及相關編程內容,使學生能夠“學有所用”,從而提高學生專業學習興趣,改善教學效果,有效地將面向對象程序設計課程融入專業培養。
按照上述思路,設計好的模塊化程序,學生在后續課程設計中仍可以作為參考。而且測控系統設計項目的選題內容可以根據需要靈活調整,但必須滿足的共性條件是:能將單片機控制終端或信號采集與數據處理的結果顯示在上位機屏幕上,實現上下位機的通信,并能夠對采集到的數據進行管理,包括數據的顯示、保存與打印等。
將測控系統設計項目引入面向對象程序設計課程,以基于C++Builder語言開發的模塊化程序為平臺進行教學,突破了傳統程序設計類課程的授課模式。通過教學實踐證明,這種新的教學方法不僅使學生在有限的課堂時間里熟悉了一種高級編程語言,而且在課程結束時亦可掌握開發測控系統涉及到的上位機軟件系統設計方法。該教學方法目前已應用于測控專業09級學生,并取得了良好的教學效果,學生的學習興趣和動手能力得到明顯提高,為學生順利走向工作崗位奠定了基礎。搭建的模塊化程序,可用于后續微機原理課程設計及儀表課程設計,為實現專業課程體系的協調統一起到一定的推進作用。
[1]王飛鵬.面向對象程序設計教學方法研究探討[J].科技信息,2008(34):58-60.
[2]莫燕,熊邦書,付崇芳.將硬件引入“面向對象程序設計”課程實驗教學[J].計算機時代,2010,4(1):62-63.
[3]周子平,杜月云.《VC++面向對象程序設計》的模塊化教學與創新應用[J].商丘職業技術學院學報,2007,6(5):112-113.
[4]李麗榮,邵林,黃艷.模塊化方法應用于軟件課程教學的探索[J].科技信息,2007(25):46-47.
[5]陸衛忠,劉文亮,等.C++Builder 6程序設計教程(第二版)[M].北京:科學出版社,2009.