徐迪新 吳長孫(江西農(nóng)業(yè)工程職業(yè)學院)
C++面向對象程序設計教學改革探索與研究
徐迪新吳長孫
(江西農(nóng)業(yè)工程職業(yè)學院)
基于C++面向對象程序設計教學中的重點、難點和學生的整體素質,針對我校這門課程教學中存在的問題,進行了深入分析和剖析。以提高學生的邏輯思維能力和實際編程能力為目標,從教學理念、教學方法、教學手段、教學實踐等多個環(huán)節(jié)入手,以案例教學來指導實踐教學,以項目式教學為最終歸宿,對課程教學進行了全方位的改革,最終達到了大大提高學生的實際編程能力和創(chuàng)新能力的目標。
C++面向對象程序設計;實際編程能力;案例教學;項目式教學
在C++面向對象程序設計課程教學中,提高學生的實際編程能力和創(chuàng)新思維能力,一直是高職院校教師追求的目標。目前在對該課程的教學研究中,重點在教學手段和教學模式的改革、課程建設的研究等方面。對于如何培養(yǎng)學生的邏輯思維能力、提高學生的實際編程能力和熟練運用C++面向對象知識來創(chuàng)新式地解決實際問題等方面研究不多。本文從理論教學、實踐教學、案例教學、項目設計教學入手,緊緊圍繞提高學生實際編程能力這條主線,以理論教學、案例教學來指導實踐教學,以項目式教學為最終歸宿,最大限度地提高學生的實踐編程能力和問題解決能力。
C++語言程序設計作為高職院校計算機及相關專業(yè)的核心基礎課程,具有很強的理論性、實踐性和創(chuàng)造性,它是在面向過程設計C語言的基礎上發(fā)展演變而來的一種面向對象程序設計語言,用對象的思維方式來解決現(xiàn)實生活中的實際問題,具有更加高效、面向底層、跨平臺等優(yōu)點,并且是學習數(shù)據(jù)結構、網(wǎng)絡編程、游戲編程以及cocos2d-x編程等課程的重要基礎。由于C++涉及的面向對象的概念比較復雜,知識內容非常多,使用靈活,長期以來,C++語言被公認為是最難學習的編程開發(fā)語言?,F(xiàn)行常規(guī)的教學方法,在實際操作水平、綜合分析能力及創(chuàng)新能力等方面很難達到預想的效果,學生對知識體系理解不透徹,實際能力上不去,最后導致畏難情緒蔓延。經(jīng)過多年的教學實踐和不斷探索總結,筆者認為案例教學法和項目設計教學法可以彌補傳統(tǒng)教學法在講授知識內容時的不足,用案例教學的方法來指導實踐教學,讓學生在案例教學中掌握知識和方法,透徹地掌握知識,進而指導實踐教學。用項目式教學來加深所掌握的知識,做到融會貫通,從而提高實際編程能力、解決問題的能力以及創(chuàng)新能力。
1.案例教學的基礎思想
案例教學法是以實例為教學手段的一種教學方法,把基本知識融入實例中,以實例形式把知識呈現(xiàn)給學生,進而可以形象生動地掌握知識。是教育者本著知識與實際問題有機地融合的宗旨,遵循教學目標,以案例為基本素材,將學習者引入一個特定的真實情境中,重點培養(yǎng)學習者的批判反思意識,并促使學習者充分理解問題之復雜性、變化性、多樣性等屬性的重要教學形式。
2.案例教學的實施原則
C++面向對象程序設計的案例教學方法有其獨特的規(guī)律,首先要求任課教師應對C++面向對象程序設計這門課程的知識體系框架有很深的理解和熟悉,在選用課程案例時,應進行全面系統(tǒng)的規(guī)劃。選取的案例要遵循由淺入深、由簡入難,層層遞進,整個案例體系能全面地覆蓋整個課程的知識體系,符合教學目標,能體現(xiàn)難點和重點,要看重與現(xiàn)實問題的綜合性。案例設計既要包含課程基本知識,也要顧及部分能力較強學生深入學習的需要,能充分調動各個層次學生的積極性。在案例選擇上注重激發(fā)學生的學習興趣,讓現(xiàn)實問題融入案例中,使學生對案例本身產(chǎn)生較強的學習興趣和積極性,在學習的過程中獲得解決實際問題的能力,在不知不覺中提高學生的實際編程能力和創(chuàng)新思維能力。
3.案例教學的執(zhí)行過程
在案例教學的過程中,各個環(huán)節(jié)都很重要,要做足必要的準備工作。首先要精選教材,教材的選取直接影響到案例的知識體系結構,一本好的教材,有利于任課教師從整體上分析教學內容和教學目標,才能為案例教學選材做好充分的準備。當然不管多好的教材也很難做到,也很難適應每所院校教學的實際需要,在選用主教材的同時,也需要選用多本輔助教材。
其次是案例的選取,案例是案例教學整體環(huán)節(jié)中最重要的一步,案例選取的好壞直接關系到整個案例教學在C++面向對象程序設計中教學效果的成敗。案例選取應從以下兩個方面進行把握:
(1)針對性要強
要選取的案例要充分體現(xiàn)C++程序設計的編程思想,這門課程的最主要、最核心的思想就是面向對象,也就是類和對象。假設講授類和對象時,選取案例時就要體現(xiàn)面向對象程序設計的本質,類是來源于現(xiàn)實生活,我們選取案例的實例時,也應來自于現(xiàn)實生活。同時也能夠體現(xiàn)類和對象的關系,反映出類的成員屬性和成員方法等知識內容,將這種抽象的東西形象化、生動化地呈現(xiàn)出來。
(2)選取案例要精
選取案例時要緊扣C++面向對象程序設計面向對象的思想,要符合面向對象的三大特性:封裝性、繼承性、多態(tài)性。設計案例要能由普遍性到特殊性,提高學生認知知識的廣泛性;案例選取要有一定的深度和靈活性,要有一定的可擴展性,傳授知識不能局限于表象的內容,要把握其實質;案例要有一定的吸引力,讓案例盡量貼近生活,這樣學生學起來不會感到枯燥,也能提高學生的學習興趣。
精選案例之后,就是案例的實施過程,實施過程做得好壞,直接影響到學生的吸收效果,在實施過程中需要任課教師以扎實的理論功底和豐富的實踐經(jīng)驗為保障。實施過程可分為如下幾個步驟:
討論案例:教師在課堂上提出案例,學生討論案例,教師輔助引導,培養(yǎng)學生的邏輯思維能力。
分析總結案例:討論案例結束后,針對學生的討論意見進行分析和總結,提出自己的解決方案,最后對學生的反饋意見進行收納,以便對案例教學進行改進。
指導實踐教學:提高學生的實際編程能力和自我創(chuàng)新能力,最有效的途徑之一就是上機實踐。我們可以將案例進行適當?shù)母倪M或深入,讓學生思考解決上機實訓問題的途徑,得到有效解決問題的方案,從而達到真正掌握知識的目的。
案例教學雖有其自身優(yōu)勢,能達到很好傳授知識、掌握知識的目的,但有其片面性,它能把知識體系模塊化、分層次性地傳授給學生,但無法將整個知識體系串起來,很難做到知識體系的融合、升華,我們有必要在案例教學的基礎上引入項目式教學這種方式,旨在提高學生對知識體系框架的靈活應用把握能力,培養(yǎng)團隊合作、協(xié)調能力,實際應用編程能力以及自我創(chuàng)新能力。
C++程序設計項目式教學是在任課老師的指導下,將一個獨立的項目交給學生或團隊處理,信息收集、方案設計、代碼編寫及最終結果等,都由學生或團隊自己負責,學生或團隊通過該項目了解并把握整個開發(fā)過程?!绊椖拷虒W法”最顯著的特征是“以項目為主線、教師為引導、學生為主體”。
項目式教學在C++程序設計中,最佳選擇的時間節(jié)點是整個知識體系講完或核心知識講完時實施,項目完成的時間跨度應在一周左右,實施方式以實習實訓為主。項目式教學組織形式一般以團隊為主,團隊人數(shù)以4~5人為最佳,項目一般來說相對較大,涉及的知識較多,有時還要跨學科,在C++的項目中,通常要用到軟件工程這門課程的知識,單靠學生個人的能力,很難在較短的時間內完成,小組團隊人數(shù)也不宜過多,否則分工、合作、組織、協(xié)調方面則不好處理。
項目式教學與案例教學既有區(qū)別也有聯(lián)系,案例教學以傳授知識為主旨,通過案例傳授知識,以案例指導實踐教學;項目式教學以應用知識為主旨,通過完成項目提高學生的實際編程能力、團隊分工合作能力、自我創(chuàng)新能力。項目教學和案例教學都有實踐環(huán)節(jié),但案例教學的實踐環(huán)節(jié)處在輔助地位,加強學生對知識的掌握,實踐過程中以學生個人為主,并且時間跨度也短,一般為兩個小時左右;項目教學中的實踐環(huán)節(jié)處于主體地位,以學生團隊為主,時間為一周左右,每個項目團隊的項目應不一樣,學生是主導,教師是輔助,重點指導怎樣進行團隊中組員的分工合作,遇到瓶頸式問題加以指導。項目式教學同樣也有項目選擇的問題,總的原則和案例教學中案例的選擇相似,但對任課老師的要求更高,一是項目式教學的項目較多,一個班級中有較多的項目小組,各個小組的項目不同;二是要緊扣選擇項目的原則要求,緊扣C++教學大綱,要精選,這樣必須要求任課教師有一定的項目開發(fā)經(jīng)驗。
本文提出了C++面向對象程序設計教學改革的思路,在傳統(tǒng)的教學方式中導入案例教學和項目式教學,以案例教學指導實踐教學環(huán)節(jié),讓學生在形象化、生動性、趣味性的教學過程中吸收知識、掌握知識,調動學生的學習積極性,激發(fā)學生的創(chuàng)造性思維;以項目式教學為最終歸宿,學生在項目實踐過程中,把C++程序設計中的知識體系串聯(lián)起來,提高學生的綜合分析問題和解決問題的能力,加強對學生自學能力、創(chuàng)新能力、分工合作能力的培養(yǎng),最終提高學生的實際編程能力、自我創(chuàng)新能力以及團隊協(xié)作能力。
[1]彭召意,朱艷輝,周玉.C++面向對象程序設計課程的實踐教學研究[J].計算機教育,2010.
[2]鄭莉.C++語言程序設計[M].3版.清華大學出版社,2003-12.
[3]肖明.案例教學法在“C++語言程序設計”教學中的應用[J].計算機教育,2010.
[4]邱桂華,袁麗.案例教學在C++面向對象程序設計中的實踐[J].江西藍天學院學報,2008(12).
[5]王梅.C++程序設計案例教程[M].北京郵電大學出版社,2012-10.
[6]胡慶芳.優(yōu)化課堂教學:方法與實踐[M].中國人民大學出版社,2014.
·編輯李建軍
徐迪新(1976—),男,江西豐城人,碩士,江西農(nóng)業(yè)工程職業(yè)學院講師,研究方向:計算機網(wǎng)絡與信息安全技術。
吳長孫(1976—),男,江西南豐人,江西農(nóng)業(yè)工程職業(yè)學院講師,研究方向:計算機應用技術。