李麗慧+蔣良衛(wèi)
【摘 要】針對計算機類專業(yè)C#程序設計課程教學,提出提升本專業(yè)學生C#程序設計實踐能力的教學改革辦法。以南華大學計算機學院軟件工程卓越工程師計劃班C#程序設計課程為例,闡述本課程教學模式改革、教學內容整合、教學效果評價等方法措施。這些舉措在2017春季學期實施2015級軟件工程卓越1班,實踐教學效果得到了明顯提升,受到學生的歡迎。
【關鍵詞】C#程序設計;項目驅動法;實踐教學
【Abstract】As to the teaching of C# program design for computer science students. this paper puts forward some methods to improve the practical?ability?of C# program design. It takes software engineering excellence engineer program class from computer school in university of south China for example, and states the teaching?module?innovation, the integration of teaching context and the evaluation of teaching effect and so on. These?measures have gained a good effect since them token during the spring semester in 2017 as to 2015 software engineering excellence engineer program class.
【Key words】C# Program Design; Project-Driven Method; Practical Teaching
0 前言
《C#程序設計》課程是為大二軟件類和計算機類學生開設的一門重要專業(yè)課,是一門純面向對象的程序設計語言,由C/C++語言衍生而來,因此他繼承了C/C++語言的優(yōu)良特性,同時摒棄了C/C++語言中一些復雜的、不安全的東西,比如指針。它是一種安全的、穩(wěn)定的面向對象的編程語言。它既具有Visual Basic 語言可視化操作的簡單性,同時又具備C/C++語言的運行高效性。由于其優(yōu)雅的語法風格、創(chuàng)新的語言特性、強大的操作能力以及便捷的面向組件編程的支持,使之成為.NET平臺開發(fā)環(huán)境中的首選語言。是軟件類、計算機類學生必學的程序設計語言之一。
由于C#程序設計課程知識點繁瑣,很多知識點跟學生在大一學習過的C/C++及Java程序設計語言相似,教學過程中,學生對于重復性的東西產生厭學情緒。然而對軟件工程卓越工程師計劃班的學生,更是如此。一方面他們學習過類似的語法知識,另一方面,這些學生的基礎相對較好,自學能力較強,傳統(tǒng)的教學內容和教學方式很難激發(fā)學生的興趣。因此,對現有的教學模式、教學內容、教學方法等進行改革,以提高課程的吸引力,迫在眉睫。本文在總結傳統(tǒng)的灌輸式的教學方法的弊端基礎之上,結合項目教學法及南華大學計算機學院軟件卓越工程師計劃班實際情況,關于C#程序設計課程的教學進行了一些嘗試性的探索,得到了一些有用的結果。
1 相關研究綜述
為了使受教育者更好地滿足社會的需求。16世紀后期歐洲的一些建筑學校將項目教學法引入項目工作,并在18世紀歐洲的工讀教育和19世紀美國的合作教育中得到應用和推廣。經歷幾個世紀的發(fā)展,項目教學法現在已經成為流行世界的一種實用的教學方法。尤其是德國,項目教學法被運用到極致,它成就了德國的工業(yè)帝國,是德國職業(yè)教育的成功的法寶。此外在芬蘭、挪威、丹麥、瑞典等歐盟國家,新加坡、日本等亞洲國家,項目教學法也被廣泛應用于職業(yè)教育中。在這些職業(yè)學校,教師以來自于相關行業(yè)的真實項目為載體,展開項目教學。教師把課程知識點以子項目的形式,下達項目任務書。學生以項目團隊的形式進行項目的開發(fā)學習。開發(fā)學習項目的過程就是企業(yè)真實的工作流程。項目教學法能夠提供學生的團隊協(xié)作能力、自學能力,同時通過在實際項目中不斷使用所學知識,能夠使的學生對于知識點的掌握更加牢固,同時也提高的學生的實際動手能力。更重要的是培養(yǎng)了學生的職業(yè)道德,實現學校和社會用人單位的無縫對接,學生業(yè)后能直接上崗。
在我國,項目教學法也得到了廣泛的應用,但主要應用與中小學教育和職業(yè)教育領域,在普通高等學校教育教學中應用的比較少。例如,在日語視聽說課程中項目教學法的應用初探;項目教學法在中職機械專業(yè)教學中的應用探究;項目教學法在高職計算機網絡技術課程教學中的設計及其應用;項目教學法在高職院校計算機基礎教學中的應用;項目教學法在中職生理學教學中的應用等等。與傳統(tǒng)教學方法相比,項目教學法在職業(yè)教育中收到了良好的教學效果。
因此,將建立在工業(yè)社會、信息社會基礎上的,以大生產和社會性的統(tǒng)一為內容,以將受教育者社會化,為社會培養(yǎng)實用型人才為直接目的項目教學法引入普通高等學校的本科生教育中,不僅可行,同時也具有重要的意義。
2 傳統(tǒng)教學模式弊端
本文作者多年來一直承擔計算機科學與技術專業(yè)、軟件工程專業(yè)C#程序設計課程教學任務,涉及生源分為三類:第一類是軟卓班學生,此類學生基礎扎實、自學能力強、學習目的性強;第二類學生是船山學院(獨立學院、三本)軟件專業(yè)學生,此類學生與第一類學生相反,基礎差、自覺性差、自學能力差;第三類就是普通軟件專業(yè)及計算機可以與技術專業(yè)學生,此類介于前兩類學生之間。在多年的C#程序設計課程教學過程中我們發(fā)現原有的教學模式主要存在以下幾個問題:
(1)C#程序設計的教學模式與傳統(tǒng)的編程語言C/C++一樣,都是以教師為中心,以講授語法知識點為基礎,教學過程中注重學生對語法知識的掌握程度,忽略了學生運用知識解決實際問題能力的培養(yǎng)。這種傳統(tǒng)的灌輸式的教學模式無法激勵學生,特別是專業(yè)基礎扎實、自學能力強的學生學習的積極性和主動性。endprint
(2)三類學生合班上課不利于根據學生實際情況有效的組織教學內容實施教學模式改革。針對于基礎較差、自學能力有限的船山學院軟件工程專業(yè)學生,應側重于基礎語法的學習,基本知識點的梳理,而對于軟卓班學生基礎知識的灌輸式講解又沒法激發(fā)他們學習的興趣。
(3)教學內容的選擇脫離生活、脫離實際應用。傳統(tǒng)的教學內容除了書本上的理論知識外,大部分的實踐教學內容都是一些陳舊的案例。與當前社會熱點、企業(yè)的實際需求脫節(jié)嚴重。培養(yǎng)的學生雖然能夠按照老師的講述過程重復出案例,但遇到企業(yè)提出的具體實際問題,都束手無策。培養(yǎng)的學生不能立馬上任,需要企業(yè)花大半年時間進行培訓才能為其所用,使學校教育脫離了社會生活。
(4)對學生學習效果的評價方式太片面。傳統(tǒng)的評價方式主要是以任課老師為主的課堂學習態(tài)度、課后學習效果、所學知識點的掌握程度的評價。忽視了學生課后在線自主學習能力、項目團隊溝通協(xié)作能力、職業(yè)技能與能力考核,缺乏團隊成員內部的互評機制,不利于學生綜合素質的評價。
3 新教學模式改革舉措
為了解決上述提到的問題,本文作者以2015級軟卓班為實驗對象,在2017春季學期的C#程序設計課程教學中嘗試了項目驅動的教學法及并重構了有利于學生全面發(fā)展的評價機制,總結得出以下幾點改革舉措。
3.1 教學模式改改
針對于軟件工程卓越班單獨開班上課,改變傳統(tǒng)灌輸式課堂教學方式,將已經成功廣泛應用于職業(yè)教育中的項目教學模式引入普通高等教育本科生C#程序設計課程的教學之中。在教學過程中,以“以項目為主線、教師為引導、學生為主體”,改變了以往“教師講,學生聽”被動的教學模式。積極引導學生主動參與、團結協(xié)作、探索創(chuàng)新,引導學生如何在項目教學中發(fā)現新知識,掌握新內容。根據知識、技術互補、心里協(xié)調等原則構建項目開發(fā)團隊。根據職業(yè)崗位需求,設定關鍵“團隊角色”:資源調查者,創(chuàng)新者,完成者,塑造者,協(xié)調者。這些角色具有不同的工作特點。我們根據學生自身特點來確定項目開發(fā)團隊中的角色。學生以項目團隊的形式,團結協(xié)作,共同完成項目,不僅能提高學生對于語法知識點的理解程度,還能提高學生的實踐操作能力,在團隊項目模式下能夠培養(yǎng)學生合作、解決問題等綜合能力。與此同時,還能促使學生更快的完成職業(yè)生涯角色定位,更快適應就業(yè)后的工作崗位。
3.2 項目驅動的教學內容改革
傳統(tǒng)的C#程序設計課程的教學按照語法結構單元順序進行,側重于學生對語法規(guī)則知識的掌握,學生所學知識跟社會實際需求脫軌。為了讓所學的知識與學生實際生活、企業(yè)真實需求緊密銜接,讓學生生活、企業(yè)需求走進校園和課堂,實現校園與社會、與企業(yè)的無縫銜接,需要對教學內容進行整理歸納。我們選取發(fā)生在學生們身邊的、企業(yè)真實的需求作為素材,比如教師指導學生參與競賽的獲獎作品(大學生數學建模競賽、ACM程序設計大賽、湖南省應用開發(fā)大賽、中軟杯等)、老師主持或參與的課題(國自科、省自科、省教育廳項目等)、跟企業(yè)合作的項目(中核四零四、成都核動力院等以及教師負責的技術開發(fā)類實際項目等。從中提煉出跟所學知識點相關聯的子課題,讓學生真正參與進來。通過參與項目,使學生鞏固和掌握所學理論知識,更重要的是培養(yǎng)學生應用所學知識解決實際問題的能力。發(fā)揮他們的主觀能動性,幫助他們克服被老師牽著鼻子走的心態(tài)。
3.3 適合學生綜合發(fā)展的多元評價方式改革
改變傳統(tǒng)的以任課老師為主的單一、片面的他人評價方式,圍繞項目教學過程,對于學生的評價由原來的任課老師單一評價轉變?yōu)槿握n老師、學生自己、項目團隊成員組成的多元化評價。評價的內容除了課堂的學習效果外,結合學生線上網絡資源自主學習的情況、各成員在項目團隊中執(zhí)行了團隊角色情況、進行綜合考慮,重點考核學生的學習態(tài)度、自主學習能力、團隊協(xié)助精神、創(chuàng)新實踐能力等綜合能力。 4 結束語
C#程序設計是計算機類專業(yè)的一門核心課程,C#程序設計課程的教學不僅是編程能力,而是要通過該課程的學習,培養(yǎng)學習的自學能力、實踐能力、創(chuàng)新能力、分析問題和解決問題的能力、所學知識的運用能力以及項目團隊團結協(xié)作能力。在本文提出的項目驅動法教學模式中,教師首先根據學生的實際情況(特點、能力)將學生按項目開發(fā)團隊配置進行分組。其次教師要從以往學生競賽獲獎作品、課題項目中根據教學內容提煉出合適的功能模塊作為項目驅動法的教學內容。并在此基礎上重點考核學生的知識運用能力、實踐能力和分析問題解決問題能力。此教學改革探索已在2015級軟件卓班進行了初步嘗試,根據學生的反饋情況,教學效果良好,有望進一步在其他軟件班級進行推廣。
【參考文獻】
[1]鄧作杰,譚小蘭,莫海燕.基于項目教學法的教學實踐與研究.湖南工程學院學報:社會科學版.2010年第3期,91-93頁,2010.
[2]喬小燕.案例同步——項目驅動程序設計類課程教學改革研究,考試周刊,2014(85).
[3]Junyang Li,The Practice of Project Based Computer Language Teaching,2013 The Conference on Innovative Education(IEDU 2013) , Oct. 26-28, 2013 Yichang, China.
[4]李秀妮.項目驅動教學法在數據庫課程教學中的應用,科技向導,2011(35).
[5]鄒羚,張建.基于項目設計的計算機語言課程教學實踐.江蘇教育學院學報,2010.
[6]曾雅琳,郭斌,黃龍軍,徐虹.基于項目驅動的數據庫教學方法探索,計算機科學,2009.4(36):115-116
[7]解厚云.項目教學法在中職《計算機基礎》教學中的應用.軟件(教育現代化),2013.
[8]向玲玲,韓娜.項目教學法在高校計算機教學中的運用.青年與社會.2013.
[9]錢建波,于正永,何曉鳳.淺析高職院校項目化教學及其在C語言教學中的應用.中國科技信息,2010(21):252-253.
[10]李媚,張曉明,王向.項目驅動式教學法在計算機本科實訓課程中的應用研究,中國科技創(chuàng)新導刊,2012(25):174.
[11]王曉光.C語言教學的教學模式改革策略解析.電腦知識與技術2013.
[12]鄒曉兵.項目驅動教學法在C#程序設計中的應用,重慶教育學院學報,2012.5(25):65-67.
[責任編輯:張濤]endprint