摘 要:借鑒CDIO工程教育理念,提出與CDIO的4個能力相對應(yīng)的《Java語言》教學(xué)新模式,闡述從實踐能力培養(yǎng)的Java教學(xué)大綱、實驗內(nèi)容的組織、教學(xué)方法改進等幾個方面的改革措施。實踐證明,該課程改革能夠調(diào)動學(xué)生學(xué)習(xí)的積極性并提高學(xué)生的綜合實踐能力。
關(guān)鍵詞:Java 語言;CDIO;教學(xué)改革;能力
中圖分類號:TP391.6
CDIO是由麻省理工學(xué)院和瑞典皇家工學(xué)院等四所大學(xué)經(jīng)過四年探索而形成的先進教育思想,我國部分非研究型高校近年來將CDIO的教育理念應(yīng)用于高等教育、課堂教學(xué)、實踐教學(xué)等領(lǐng)域,取得了很好的教學(xué)效果。
CDIO即“構(gòu)思—設(shè)計—實現(xiàn)—運作”的工程教育思想。其中蘊含了12條標(biāo)準(zhǔn)。主要包括:在教學(xué)過程中,應(yīng)以最大程度體現(xiàn)和反映軟件開發(fā)中的構(gòu)思、設(shè)計、實施和運作背景;在制定課程標(biāo)準(zhǔn)時,應(yīng)體現(xiàn)出對學(xué)生工程基礎(chǔ)知識、個人能力、人際團隊能力和工程系統(tǒng)能力等方面的能力培養(yǎng);在制定培養(yǎng)計劃時,應(yīng)包含不同能力層次的劃分和實施等細(xì)節(jié);要為CDIO培養(yǎng)模式的開展和實施提供工程實踐的場所;將學(xué)科的學(xué)習(xí)和工程職業(yè)訓(xùn)練有機地融合在一起,讓學(xué)生有綜合性學(xué)習(xí)的經(jīng)歷和主動學(xué)習(xí)經(jīng)歷;教師應(yīng)具備實施CDIO思想高素質(zhì)的人才;學(xué)生學(xué)習(xí)的方式應(yīng)轉(zhuǎn)變?yōu)橹鲃訉W(xué)習(xí)并具備持續(xù)學(xué)習(xí)能力;對學(xué)生的考核和評價體系應(yīng)與CDIO的培養(yǎng)目標(biāo)一致等。針對我校計算機科學(xué)與技術(shù)專業(yè)的學(xué)生學(xué)習(xí)“Java語言”課程后,學(xué)生存在獨立分析問題和解決實際問題的能力、實際開發(fā)能力、團隊協(xié)作精神不強等問題,現(xiàn)將CDIO思想引入到Java教學(xué)后,對CDIO思想在Java教學(xué)過程中的應(yīng)用和實踐展開以下論述。
1 Java課程體系的改革
1.1 注重實踐技能的Java教學(xué)大綱
在基于CDIO思想的Java教學(xué)大綱將專業(yè)知識按能力培養(yǎng)目標(biāo)分成:基礎(chǔ)模塊、應(yīng)用模塊、高級程序設(shè)計模塊,形成了由淺入深的推進式教學(xué)體系。主要內(nèi)容包括:Java程序的基礎(chǔ)模塊、標(biāo)準(zhǔn)化考試系統(tǒng)GUI用戶登錄模塊、標(biāo)準(zhǔn)化考試系統(tǒng)的GUI用戶注冊模塊、標(biāo)準(zhǔn)化考試系統(tǒng)的其它模塊。其中基礎(chǔ)模塊的主要教學(xué)內(nèi)容有Java開發(fā)環(huán)境的學(xué)習(xí)、Java程序的虛擬機原理、Java的數(shù)據(jù)結(jié)構(gòu)和Java的語言要素等。用戶登錄模塊包括GUI與CUI區(qū)別、AWT和SWING的異同、容器和組件的關(guān)系、事件處理機制、組件的使用等。標(biāo)準(zhǔn)化考試系統(tǒng)操作模塊包括I/O處理、多線程、網(wǎng)絡(luò)編程等。
1.2 設(shè)置由淺入深的實驗內(nèi)容
授課計劃按知識體系的內(nèi)容組織,實驗課的設(shè)計以設(shè)計性實驗為主。實驗課的課程目標(biāo)是幫助學(xué)生建立面向?qū)ο蟮乃枷耄簿褪钱?dāng)學(xué)生面對問題時,能夠以面向?qū)ο蟮木幊趟枷虢鉀Q問題。在實驗課上將面向?qū)ο蟮某绦蛟O(shè)計思想以最簡單的案例開始,將新知識逐漸加入到最簡單的案例中,以這種形式設(shè)計學(xué)生的實驗內(nèi)容會使學(xué)生易于接受新知識。這種由淺入深的實驗內(nèi)容形式符合CDIO的教學(xué)思想,增強學(xué)生對知識體系的適應(yīng)性并加強學(xué)生調(diào)控程序的能力,使學(xué)生盡早地適應(yīng)工程化學(xué)習(xí)的環(huán)境中,并以規(guī)范化的工程思維方式來面臨欲解決的問題。
在設(shè)計基礎(chǔ)模塊的實驗內(nèi)容時,要求學(xué)生編寫一個長方形類和測試類,理解面向?qū)ο蟪绦蛟O(shè)計的第一個特點-封裝。在后續(xù)的知識中,體現(xiàn)繼承思想時編寫長方形類的子類矩形類,并嘗試在這子類中加入新的方法實現(xiàn)對父類的方法覆蓋和重寫,讓學(xué)生單獨編寫測試類實現(xiàn)對父類和子類中已設(shè)計的方法進行調(diào)用,體會子類中被覆蓋或重寫的方法的調(diào)用方法與效果。再以接口來管理長方形類及其子類,理解面向?qū)ο蟪绦蛟O(shè)計的第二個特點-繼承。在引入上轉(zhuǎn)型對象后,結(jié)合前面的方法重載和繼承中的方法覆蓋等知識理解面向?qū)ο蟪绦蛟O(shè)計的第三個特點-多態(tài)在程序中的體現(xiàn)。在Java的GUI知識體系的講解過程中,將上面案例中類為原型來構(gòu)筑圖形用戶界面及其功能;程序運行時輸入數(shù)據(jù)或按鍵操作時,引入異常處理機制來捕獲和處理異常以體現(xiàn)程序的健壯性,形成異常處理實驗的主要內(nèi)容;在對GUI實驗內(nèi)容進一步擴展時,引導(dǎo)學(xué)生設(shè)計標(biāo)準(zhǔn)化考試系統(tǒng)的界面設(shè)計,在解決考試系統(tǒng)的試題的調(diào)入時引入Java I/O實驗的主要內(nèi)容。在學(xué)習(xí)多線程和網(wǎng)絡(luò)編程時,將標(biāo)準(zhǔn)化考試系統(tǒng)的多用戶及網(wǎng)絡(luò)底層數(shù)據(jù)通訊的知識引入實驗。通過這種由淺入深的的案例的設(shè)計,不僅讓學(xué)生學(xué)會了面向?qū)ο蟪绦蛟O(shè)計的思想,而且將知識由點到線到面的梳理過程,使學(xué)生有一種全新的學(xué)習(xí)方式的感受。
1.3 運用項目驅(qū)動教學(xué)法營造學(xué)習(xí)情境
在第一次上課時向?qū)W生展示教師已完成過的項目或經(jīng)典的案例,讓學(xué)生知道學(xué)完這門課程后,這門課程用來“做什么”。筆者根據(jù)本專業(yè)Java相關(guān)課程關(guān)系,將“標(biāo)準(zhǔn)化考試系統(tǒng)”的增量式開發(fā)作為教學(xué)組織內(nèi)容,以這個案例串接Java課程的理論知識點。接下來的課程對完成該任務(wù)需要用到的知識點和技術(shù)進行逐一講解,讓學(xué)生了解“如何做”。課程結(jié)束時學(xué)生動手完成實戰(zhàn)訓(xùn)練,在訓(xùn)練過程中提出改進思路讓學(xué)生分析,使學(xué)生逐步知道“如何做更好”。通過案例的構(gòu)思、設(shè)計、實施和運作,學(xué)生的動手實踐能力逐步提高,在教學(xué)過程中逐步滲透CDIO中的職業(yè)素質(zhì)培養(yǎng)。
1.4 分組教學(xué)以提高學(xué)生團隊協(xié)作能力
團隊協(xié)作能力在軟件開發(fā)過程中起著越來越重要的作用。在教學(xué)過程中,采用小組教學(xué)法來調(diào)動學(xué)生學(xué)習(xí)的積極性,真正做到“自我學(xué)習(xí)”與“團隊學(xué)習(xí)”相結(jié)合,更好地培養(yǎng)學(xué)生的團隊合作和溝通能力。小組教學(xué)法是以IT公司真實工作的團隊為模仿目標(biāo),采用基于小組的團隊教學(xué)方法,以相同學(xué)習(xí)水平的學(xué)生為分組基礎(chǔ):遵循組內(nèi)異質(zhì),組間同質(zhì)的原則,按3~4人一組將學(xué)生分成若干組。在教學(xué)過程中將任務(wù)以小組的形式展開,學(xué)生以小組為單位學(xué)習(xí),在單元實訓(xùn)、綜合設(shè)計環(huán)節(jié)中進行這種模式的團隊開發(fā),每個學(xué)生在項目組中選擇適合自己的最佳角色,不同項目任務(wù)中需要嘗試項目開發(fā)過程中角色的轉(zhuǎn)換,這階段的學(xué)習(xí)學(xué)生如同進入工作崗位,相互配合,在教師的指導(dǎo)下解決問題或完成學(xué)習(xí)任務(wù)。通過學(xué)生親身的感受,能夠獲得CDIO教學(xué)過程中職場體驗,同時這種學(xué)習(xí)方式也培育了學(xué)生的職業(yè)素養(yǎng)。
2 結(jié)束語
在“Java語言”的教學(xué)過程中,體現(xiàn)并貫徹了全新的CDIO理念,從“學(xué)中做”到“做中學(xué)”,在教學(xué)過程中以案例做為教學(xué)資源,使學(xué)生在學(xué)習(xí)的過程中潛移默化地掌握了《Java語言》實際應(yīng)用項目開發(fā)的流程并積累了一定的項目管理經(jīng)驗。培養(yǎng)了學(xué)生實際應(yīng)用項目開發(fā)能力。提高了學(xué)生的學(xué)習(xí)積極性及編程能力,促進了學(xué)生實際應(yīng)用項目開發(fā)的綜合能力。學(xué)生在學(xué)習(xí)的過程中學(xué)會了相關(guān)專業(yè)課程的學(xué)習(xí)方法,為今后的相關(guān)課程的學(xué)習(xí)建立信心并打下良好的基礎(chǔ),使學(xué)生在就業(yè)時能盡快進入Java軟件工程師角色,提高了學(xué)生的就業(yè)競爭力。
參考文獻:
[1]李瑞生.CDIO工程教育思想在Java教學(xué)中的實踐[J].中國電力教育,2012(10).
[2]胡局新.基于CDIO的Java程序設(shè)計課程教學(xué)改革探索[J].計算機教育,2013(10).
[3]解紹詞.基于CDIO的Java平臺課程教學(xué)新方式的探討[J].教育教學(xué)論壇,2013(12).
[4]甘文麗.基于CDIO融合工作過程的Java程序設(shè)計課程改革[J].重慶文理學(xué)院學(xué)報,2013(05).
作者簡介:王麗輝(1972-),女,碩士,講師,研究方向:軟件工程、計算機安全和計算機教育。
作者單位:吉林農(nóng)業(yè)科技學(xué)院,吉林吉林 132101