奚洋+劉迪+曹杰

摘要:文章主要研究了在計算機類課程的教學中引入競賽模式,通過競賽刺激學生對知識的掌握和應用的方式方法。在課堂中開展競賽,在課堂外參加競賽,以競賽貫穿于培訓計算機類專業學生的過程中,這種改革模式具有很大的實用性和推廣型,對其他動手實踐類專業的教學改革有一定的指導意義。
關鍵詞:競賽激勵;計算機類課程;動手實踐;教學改革
1目的意義
在國家大力培養工程性人才政策的大形勢,以及社會對IT專業人才需求的影響下,提高學生的動手實踐能力成為計算機類專業培養的重要目標。很多高校的計算機類專業相繼開設了例如實驗、實訓等課程,通過這些動手操作課程的鍛煉,大多數學生的能力有了一定程度的提高,體現在計算機和軟件工程專業的學生上,就是編程能力有了明顯的提高。但是通過調查比較程序完成的速度,運行的效率,以及與實際工程問題的相關程度后發現,這種實踐教學模式仍然存在著一些問題,主要表現在:
(1)無法激發學生的興趣。
(2)編寫的程序質量低。
(3)練習題目和實際工程問題不相關。
(4)無法系統的了解軟件開發的規范流程。
(5)應用所學知識解決工程實際問題的能力差。
因此,本文提出將參加競賽和課程結合起來,以提高學生動手能力,鞏固對知識的掌握。
2主要內容和方案
(1)實踐從“理論學習型”向“工程應用型”轉化的五個階段的教學法,即理論向實踐過渡教學法、限時任務教學法、團隊協作教學法、競賽激勵教學法和企業實習教學法。
(2)以“競賽驅動”貫穿整個實訓過程。
(3)擴充實訓課程方向,在傳統的JAVA和.NET方向基礎上,增添當下較流行開發方向:移動程序開發(IOS和Android)。編寫相應的實訓指導教材,參加該方向的競賽等。
(4)將畢業設計環節納入到改革體系中,注重畢業設計的工程實踐性。
(5)加強和軟件公司的合作,開展對學生的技術培訓和項目的聯合開發。
可以總結為:利用模擬競賽的方式把所學的基礎知識應用到實踐中,在動手操作中的知識應用將反過來促進基礎理論的理解和掌握;在實踐中逐漸培養成熟的編程技能后,引導學生參加競賽參與企業實際軟件項目,引導學生從“模擬練習”向“工程實踐”過渡,團隊中成員之間的工程實踐經驗將互相影響,帶動全體成員實踐能力的提高。如圖l所示。
3具體實施步驟
把軟件項目實訓課程分為幾個階段,每個階段應用不同的教學方式,層層深入的把學生從“理論學習型”向“工程應用型”轉化。
(1)理論向實踐過渡教學法。
把課堂教學中的內容按一定規則分塊,針對每一塊知識提供給學生程序代碼段。在所給程序之上,讓學生進行修改或功能擴充,以實現從理論講授向動手操作的過渡。以《Java程序設計》課程為例,將其分為GUI編程、線程、文件處理等幾個部分。其中,針對GUI編程部分提供一個實現計算器功能的程序段,文件處理部分提供一個實現記事本功能的程序段,讓學生在此基礎上加以完善和擴充。
(2)限時任務教學法。
有限的時間內挑戰有一定難度的問題,對學生潛能的激發有很大的促進。一旦挑戰成功,學生的自信心和學習該門課程的興趣也會得到前所未有的提高。第一階段的基礎訓練后,進入第二階段。采用ACM程序設計大賽規則,在限定的時間內,現場編程,解決一個看似不可能完成的題目。比如,在半小時內,編寫出一個程序,用來模擬左右手同時畫圓和矩形的問題。給定的時限要注意,時間不能太長,否則對學生沒有挑戰性;時間過短,則使一些學生看到題目后,便有可能放棄。
(3)團隊協作教學法。
經過前兩個階段的訓練后,學生的個人編程能力有了很大程度的提高。在培養了獨立解決問題技能的基礎上,要發揮1+1>2的團隊協作功效。
(4)競賽激勵教學法。
競賽激勵是針對部分學生的再提高。最好的情況是所有參加該軟件實訓課程的學生均能加入競賽的行列中。
經過本課程的前幾個階段的訓練,一些學生有興趣,同時也具備能力參加一些競賽,在實戰中進一步提高解決實際工程問題的能力。比如ACM大賽,足球機器人大賽,Android平臺軟件開發大賽等。參與競賽的實戰經驗,會激發學生的學習興趣和動力,使學生對軟件開發的學習由被動變為主動,經過這個過程的鍛煉,書本上學到的知識才會更深刻牢固的為己所用。
(5)企業實習教學法。
通過和企業的聯合培養,為學生提供到企業培訓或實習的機會,讓學生可以切身的體會實際的軟件企業開發軟件項目的規范流程,提高解決實際工程問題的能力。
4特色和創新點
(1)建立了整合的實訓體系。把以往的課程設計和實驗課整合成一個完整的體系,環環相扣,循序漸進。
(2)完成了理論到工程的過渡。實現了理論講授到工程實踐的平穩過渡,知識轉化為生產力,避免了理論和實踐的脫節。
(3)課程和競賽相結合。比賽的競爭,增強了課程的挑戰性,激發了學生的潛能和創造力,提高了應用所學知識解決工程問題的能力。
(4)和企業聯合培養。在企業的親身實習體會,讓學生更接近軟件行業的真實項目開發過程,加深了對IT專業的感知。
5學生受益情況
(1)競賽激勵法能夠充分調動學生的學習積極性,有效提高學生動手編程,解決工程實際問題的能力。
(2)在參加各種類型的計算機類競賽過程中,深入了解軟件項目開發的各個環節,切身體會軟件項目開發的規范流程,提高在應聘中的競爭力,為將來在軟件行業更好的發展打下良好的基礎。
通過參與實際工程項目的開發以及競賽,提高學生的團隊協作能力和創新能力。