◆王 巍 辛慧杰 李 威
(大連民族學院計算機科學與工程學院)
小型項目驅動法在VC++教學中的應用研究
◆王 巍 辛慧杰 李 威
(大連民族學院計算機科學與工程學院)
VisualC++是一個強大的編程工具,目前在圖象處理、嵌入式、游戲開發等各個領域都得到了充分的發展和應用。對于計算機應用型人才,學好VC++是必不可少的一種知識和技能。然而目前學生對 VC++這門課的印象就是復雜難學,嚴重影響了學習效果。VC++本身復雜是其客觀原因,但是課程的講授方法是否得當和教學資源是否合理利用也直接影響到學生對這門課程接受和領悟的程度。鑒于目前存在的問題,探究當前的教學模式,我們發現目前簡單地理論加實踐的教學模式顯然忽略了學生主體性。學生對面向對象程序思想的理解不夠深入,W indows應用程序的運行機制和MFC開發平臺的復雜性,使得學生逐步介入該課程之后普遍感到難懂晦澀,學生很難保持持久的興趣。針對目前存在的問題和不足,孔垂柳提出基于迭代法的VC++教學探索,在一定程度上促進了教學。本文采用項目驅動教學法對教學方法進行改革,將小型項目的開發過程引入教學,為學生的學習搭建平臺,為理論和實踐教學服務。
項目驅動教學法是由著名的瑞士心理學家皮亞杰提出的建構主義學習理論演生而來。驅動教學法是指在教學過程中以一個項目為主線來展開,把相關的知識點融入到項目的各個環節中去,層層推進。通過對問題的深化或功能擴充,來拓寬知識的廣度和深度,直至得到一個完整的項目解決方案,從而達到學習知識、培養能力的目的。文獻中研究項目驅動的企業化培養方法,文獻中對任務驅動教學法進行了研究。
項目驅動教學法具有如下特征:
(1)學習情景真實而具體
項目教學法按情景創設的需求立項,學生面對的是真實而具體的問題,圍繞著學生增長知識開展的各項活動,從而使學生在親身經歷中獲得經驗和學習的教育活動。
(2)學習內容綜合而開放
項目教學法所涉及到的問題不論大與小,都具有綜合性和開放性。它融理論知識與實踐操作于一個個項目之中,不局限于書本,實踐中遇到的問題是活生生的、不斷變化發展的,可從多種角度來分析。
(3)學習途徑多樣而協同
項目教學法需要通過實踐檢驗、學習書本知識、利用自主發現、協商合作等途徑來完成。
(4)發揮教師的創造性
教師正確實施項目教學時,學生的學習積極性會被極大地激發、自覺地學習并高質量地完成項目。
1.VC++課程的特點
VC++課程的特點與其教學內容的復雜性息息相關。VC++開發環境的學習過程,不同于一般的程序設計語言、C、C++、Java等語言都有規范清晰的語法結構,而 VC++環境中W indows應用程序的框架結構,內部消息機制和MFC平臺等內容,都是新知識,也都是學生理解的難點。如MFC平臺下的類庫代碼,數據量大而且其復雜的基礎和多態機制,都使學生望而卻步。對學習過面向對象程序設計語言 C++的同學,本身對繼承和多態的意義理解不夠深刻。VC++中繁雜的基本語法,各種知識點和新概念的大量涌入,使得學生短期學習壓力過大,很容易失去學習興趣。
2.小型項目的設計
在其他教學系統中,如軟件工程課程中采用項目驅動教學的案例為策劃和建設一個網站,學生在教師指導下自主設計和實現一個網站。這種大型項目需要較多教學學時,內容亦不符合 VC++教學體系。另外,一些VC++課程中采用“綜合管理系統”作為期末綜合實驗來考察學生的學習效果,綜合性實驗開始進行時,學生的學習效果已經定格。綜合實驗學時較少,教師精力有限,學生前期堆積的問題并不能在綜合性實驗過程中得到有效解決。
本校VC++課程的教學目的是讓學生熟悉 VC編程環境,理解W indows應用程序開發流程,掌握MFC框架結構和消息響應機制,并了解MFC框架下的圖形設備接口 GD I,能夠實現對 GDI對象的操作,為后續圖形程序設計,游戲技術基礎等課程做技術支持。
綜上所述,考慮到讓學生面對真實而具體的問題,圍繞學生增長知識開展教學活動,我們提出小型項目驅動的教學方法,選擇知識點的過渡,遞進和條理性都很流暢的小型項目,用于本門課程的教學過程中。實際教學中采用“繪圖軟件的設計與實現”項目輔助教學。
“繪圖軟件的設計與實現”項目是W indows操作系統綁定的應用軟件,學生熟悉這個項目的具體內容,有深刻的理解和感知。此項目的開發工作量中等,在教學過程中不會成為教師教學的負擔,也不會讓學生感到過多的壓力,同時涉及到了教學內容的各個知識點。此項目的開發內容和開發流程正好與本課程的教學內容和思路符合,能夠將相關的知識點很好地融入項目的各個環節中,保證學習內容真實完整,而且基于項目教學法改變了以教師為中心的單純理論課堂講授模式,訓練學生的實際操作能力,使教學達到“教為了應用”的目的。
選擇“繪圖軟件的設計與實現”項目,基本功能如圖 1所示。此項目包括W indows應用程序框架類型的學習及選擇,菜單、工具欄和狀態欄的選擇與設置,交互對象的動態更新及響應鼠標事件,圖標、光標的設置與更改以及控件的使用等多項內容。在繪圖軟件的繪圖過程中,包括對設備環境類和圖形設備接口對象的定義及使用。在保存圖片的過程中涉及到數據和文檔章節的知識。通過實踐,有助于學生學習書本知識,真正理解 VC++開發環境各種機制的意義。
整個課程的教學結構和順序也是按照項目的開發過程來安排和設置的。項目開發和教學結構有機地結合,和學生的創作思路保持一致,使得學生學有所得,學以致用。在此基礎上,啟發學生的學習創新意識,可以添加各種功能,完善應用程序功能,從而使學生有自學和自我發揮的空間。如圖 2所示為學生作品。學生通過自學雙緩沖機制,解決了圖片閃爍的問題,見圖 2中所示,學生采用切分視圖框架,并添加了右鍵選擇功能。

圖 1 W indows XP系統畫圖軟件的應用界面

圖2 學生作品1
在小型項目驅動的教學過程中,學生的作品由始至終貫穿于整個學期的教學活動中,從無到有,到完善。在整個學習周期里教師輔導實時跟隨,使學生能夠做到溫故而知新,并且能夠將前期的問題有效的解決。這個過程中真正體現了“學生是學習主體,教師是學習主導”的理念。
項目驅動教學法的評價方法和要求是多種多樣的。因為本項目是模仿并改進W indowsXP系統中綁定的畫圖軟件,所以項目的評價分為基本任務評價和增強任務評價。完成軟件的模擬,即是基本任務完成。增強任務部分,主要是考察學生的創意和功能完備程度。這個部分很難制定一個標準,所以我們采用集成學生自評和生生互評的方法,進行最終評價。
評價和總結對項目的完整性有著舉足輕重的作用。合理的評價可以進一步提升學生的學習興趣。真實的總結是促進項目改進和教學方法改進的有效手段。
基于小型項目驅動的教學方法在 VC++課程教學中具有深刻的意義,它旨在把學生融入到有意義的學習任務的過程中,使學生的學習有了方向感,讓學生自主地參與知識體系的構建。小型項目驅動教學法的實踐教學效果表明本方法能夠較好地解決目前 VC++教學效果不佳的問題,能夠提升學生的學習興趣并且主動克服學習困難,實現本門課程的教學效果的優化,固化。
[1]孔垂柳.基于迭代法的 VC++教學探索[J].廣西輕工業,2009,(3).
[2]賀萌,趙香會.淺談項目驅動教學法在面向對象教學中的應用.黑龍江科技信息,2009,(36).
[3]王永琦,李佳娃,丘映瑩.高職高專以項目為驅動的企業化培養方法研究[J].遼寧教育研究,2006,(7).
[4]王婧.任務驅動法在計算機課程教學中的應用[J].計算機教育,2010,(7).
[5]劉淑婷.基于項目學習法的民辦高校計算機教學改革探索[J].中小企業管理與科技,2010,(31).