林睦綱 趙輝煌 陳堅(jiān)禎 鄭光勇 唐四薪
摘 要:文章根據(jù)工程應(yīng)用人才培養(yǎng)目標(biāo)和網(wǎng)絡(luò)編程課程的特點(diǎn),在CDIO工程教育理念的指導(dǎo)下,從教學(xué)目標(biāo)、內(nèi)容組織與設(shè)計(jì)、教學(xué)實(shí)施等方面,對(duì)《JAVA網(wǎng)絡(luò)編程》課程的教學(xué)模式進(jìn)行探討與研究,提出了知識(shí)講解案例化、能力培養(yǎng)項(xiàng)目化、課程考核全面化的網(wǎng)絡(luò)編程一體化教學(xué)模式。教學(xué)實(shí)踐表明,該教學(xué)模式有效地把教學(xué)知識(shí)點(diǎn)與工程實(shí)踐融合在一起,提高了學(xué)生學(xué)習(xí)的主動(dòng)性和積極性,培養(yǎng)了學(xué)生的網(wǎng)絡(luò)編程能力與工程綜合實(shí)踐能力。
關(guān)鍵詞:JAVA網(wǎng)絡(luò)編程;CDIO教育理念;教學(xué)模式
中圖分類號(hào):TP311? ?文獻(xiàn)標(biāo)志碼:B? ? ? ? ? 文章編號(hào):1673-8454(2021)04-0045-04
一、引言
網(wǎng)絡(luò)編程是網(wǎng)絡(luò)工程、軟件工程等計(jì)算機(jī)相關(guān)專業(yè)的一門必修專業(yè)課程。該課程在《操作系統(tǒng)》《計(jì)算機(jī)網(wǎng)絡(luò)》《軟件工程》和《數(shù)據(jù)庫(kù)》等課程的基礎(chǔ)上,通過學(xué)習(xí)互聯(lián)網(wǎng)工作原理、因特網(wǎng)尋址方式、TCP和UDP套接字編程、多線程編程和網(wǎng)絡(luò)數(shù)據(jù)庫(kù)編程等內(nèi)容,使學(xué)生掌握網(wǎng)絡(luò)應(yīng)用程序設(shè)計(jì)技術(shù),培養(yǎng)網(wǎng)絡(luò)編程的能力[1][2]。然而,根據(jù)網(wǎng)絡(luò)編程的教學(xué)情況與用人單位對(duì)畢業(yè)生的反饋信息顯示,大多數(shù)學(xué)生有較扎實(shí)的理論基礎(chǔ),但實(shí)際編程能力較弱、不熟悉開發(fā)工具、缺乏主動(dòng)性和團(tuán)隊(duì)協(xié)作精神、難以適應(yīng)企業(yè)工作環(huán)境,與企業(yè)的要求還存在一定的差距。分析其原因主要有:①網(wǎng)絡(luò)編程課程涉及的知識(shí)面廣,教學(xué)中缺乏知識(shí)融合與銜接,導(dǎo)致知識(shí)點(diǎn)散亂,學(xué)生的學(xué)習(xí)興趣不濃;②傳統(tǒng)的“以教師講解為主、學(xué)生被動(dòng)接受學(xué)習(xí)”的教學(xué)模式,不利于培養(yǎng)學(xué)生的主動(dòng)性、編程能力和創(chuàng)新能力;③“重理論、輕實(shí)踐”,缺乏對(duì)學(xué)生協(xié)調(diào)合作能力的培養(yǎng),導(dǎo)致學(xué)生動(dòng)手能力差,不能很快地適應(yīng)企業(yè)工作環(huán)境。
CDIO工程教育模式是由麻省理工學(xué)院、瑞典皇家工學(xué)院等四所國(guó)際著名的工科院校率先提出的工程教育教學(xué)模式,它以產(chǎn)品研發(fā)到產(chǎn)品運(yùn)行整個(gè)生命周期中的構(gòu)思(Conceive)、設(shè)計(jì)(Design)、實(shí)現(xiàn)(Implement)、運(yùn)行(Operate)為主線,構(gòu)造一個(gè)工程教育環(huán)境,讓學(xué)生在實(shí)踐環(huán)境中主動(dòng)學(xué)習(xí)相關(guān)的專業(yè)技術(shù)知識(shí),培養(yǎng)學(xué)生的系統(tǒng)工程能力、自學(xué)能力、組織溝通能力、團(tuán)隊(duì)協(xié)作能力和創(chuàng)新能力,使學(xué)生具備一名優(yōu)秀的工程師應(yīng)有的知識(shí)、能力與素質(zhì)[3][4]。同時(shí),它創(chuàng)新性地提出了CDIO 愿景、CDIO 大綱和具有很強(qiáng)可操作性的關(guān)于能力培養(yǎng)、一體化學(xué)習(xí)、實(shí)施與評(píng)估等十二條標(biāo)準(zhǔn)[5]。因此CDIO教育模式符合工程技術(shù)人才的培養(yǎng)規(guī)律,已經(jīng)成為了國(guó)際工程教育公認(rèn)的一種系統(tǒng)可操作的工程教育方法,也是當(dāng)前高校工科教育改革的重要指導(dǎo)思想[6-8]。
但由于每一門課程的特點(diǎn)及教學(xué)內(nèi)容不一樣,如何把CDIO教育理念與具體課程的教學(xué)相結(jié)合,設(shè)計(jì)有效的教學(xué)模式,培養(yǎng)學(xué)生的工程創(chuàng)新能力?目前各高校仍在不斷地探索與實(shí)踐中[3-9]。筆者主要根據(jù)《JAVA網(wǎng)絡(luò)編程》課程的特點(diǎn)和教學(xué)目標(biāo),結(jié)合該課程近幾年的課程建設(shè)與教學(xué)實(shí)踐,在CDIO教育理念的指導(dǎo)下,從教學(xué)目標(biāo)、內(nèi)容組織與設(shè)計(jì)、教學(xué)實(shí)施等幾方面對(duì)《JAVA網(wǎng)絡(luò)編程》課程的教學(xué)模式進(jìn)行探討與研究,希望能為網(wǎng)絡(luò)編程的教學(xué)提供借鑒與參考。
二、基于CDIO理念的《JAVA網(wǎng)絡(luò)編程》課程教學(xué)設(shè)計(jì)
CDIO教育模式基于“做中學(xué)”和“以項(xiàng)目為載體”的教育理念,將教學(xué)內(nèi)容、教學(xué)模式、教學(xué)實(shí)施、評(píng)價(jià)方式等各個(gè)方面融為一體,使學(xué)生在工程項(xiàng)目中學(xué)習(xí)理論知識(shí),提升工程實(shí)踐能力。對(duì)于實(shí)踐性很強(qiáng)的《JAVA網(wǎng)絡(luò)編程》課程,在教學(xué)過程中,教師可以遵循CDIO的教育理念,采用知識(shí)講解案例化、能力培養(yǎng)項(xiàng)目化的教學(xué)模式,把教、學(xué)、做融為一體,對(duì)教學(xué)的各個(gè)環(huán)節(jié)進(jìn)行一體化設(shè)計(jì)。
1.《JAVA網(wǎng)絡(luò)編程》課程教學(xué)目標(biāo)
課程的培養(yǎng)目標(biāo)是教學(xué)的依據(jù)和學(xué)生能力評(píng)估的標(biāo)準(zhǔn)。因此,筆者首先根據(jù)CDIO能力培養(yǎng)的標(biāo)準(zhǔn)與用人單位對(duì)網(wǎng)絡(luò)軟件開發(fā)人員能力的要求,從知識(shí)、技能、能力與素質(zhì)四個(gè)層次確定《JAVA網(wǎng)絡(luò)編程》課程培養(yǎng)目標(biāo),如表1所示。
根據(jù)培養(yǎng)目標(biāo),筆者確定《JAVA網(wǎng)絡(luò)編程》課程的教學(xué)目標(biāo)是以項(xiàng)目與案例為教學(xué)內(nèi)容的組織形式,在案例講解中學(xué)習(xí)網(wǎng)絡(luò)程序設(shè)計(jì)的基本原理與模型、常用的網(wǎng)絡(luò)編程接口、套接字編程技術(shù)與思想。在項(xiàng)目自主實(shí)現(xiàn)過程中,通過實(shí)踐應(yīng)用復(fù)習(xí)回顧面向?qū)ο蟪绦蛟O(shè)計(jì)、操作系統(tǒng)等基礎(chǔ)知識(shí),加深對(duì)網(wǎng)絡(luò)編程技術(shù)與思想的理解和應(yīng)用,熟練掌握開發(fā)工具的使用,掌握網(wǎng)絡(luò)應(yīng)用程序開發(fā)的流程,培養(yǎng)學(xué)生軟件開發(fā)能力與項(xiàng)目管理能力,形成系統(tǒng)的軟件工程開發(fā)觀念和良好的編程習(xí)慣,能夠應(yīng)用所學(xué)的專業(yè)知識(shí)與技術(shù)來分析解決實(shí)際問題,具有良好的團(tuán)隊(duì)協(xié)作精神、專業(yè)素養(yǎng)和創(chuàng)新能力。
2.《JAVA網(wǎng)絡(luò)編程》課程教學(xué)內(nèi)容組織與設(shè)計(jì)
《JAVA網(wǎng)絡(luò)編程》課程與《JAVA程序設(shè)計(jì)》課程不同,《JAVA程序設(shè)計(jì)》課程主要是學(xué)習(xí)JAVA語(yǔ)言的基本語(yǔ)法與JAVA編程思想[9],而《JAVA網(wǎng)絡(luò)》編程,不僅以JAVA程序設(shè)計(jì)為基礎(chǔ),還涉及許多操作系統(tǒng)、計(jì)算機(jī)網(wǎng)絡(luò)等相關(guān)知識(shí),如網(wǎng)絡(luò)程序中客戶端與服務(wù)器端要協(xié)同配合,為了避免在交互過程中出現(xiàn)阻塞要涉及多線程編程。因而《JAVA網(wǎng)絡(luò)編程》課程的教學(xué)內(nèi)容更豐富、更復(fù)雜、實(shí)踐性更強(qiáng)??紤]到《JAVA程序設(shè)計(jì)》課程在此前已經(jīng)開設(shè),因此我們根據(jù)網(wǎng)絡(luò)編程課程的特點(diǎn)與教學(xué)目標(biāo),在CDIO理念的指導(dǎo)下,對(duì)《JAVA網(wǎng)絡(luò)編程》課程的教學(xué)內(nèi)容[10-12]組織與安排如表2所示。
三、基于CDIO理念的《JAVA網(wǎng)絡(luò)編程》課程教學(xué)模式的實(shí)施
根據(jù)CDIO的工程教育理念,在《JAVA網(wǎng)絡(luò)編程》課程的教學(xué)中,教師以項(xiàng)目或任務(wù)等形式來模擬具體工程環(huán)境,指導(dǎo)學(xué)生進(jìn)行網(wǎng)絡(luò)編程知識(shí)的學(xué)習(xí)與網(wǎng)絡(luò)編程能力的訓(xùn)練。筆者采用了“知識(shí)講解案例化、能力培養(yǎng)項(xiàng)目化、課程考核全面化”來組織實(shí)施網(wǎng)絡(luò)編程課程的教學(xué)。在整個(gè)教學(xué)過程中,教師是知識(shí)的傳授者,傳授基礎(chǔ)知識(shí);教師也是項(xiàng)目的布置者、引導(dǎo)者、監(jiān)督者,布置項(xiàng)目、引導(dǎo)并監(jiān)督學(xué)生完成項(xiàng)目;學(xué)生主動(dòng)學(xué)習(xí)教師傳授的知識(shí),同時(shí)學(xué)生又是項(xiàng)目的協(xié)作者、設(shè)計(jì)者、完成者,主動(dòng)設(shè)計(jì)、相互協(xié)作共同完成項(xiàng)目?;贑DIO理念的《JAVA網(wǎng)絡(luò)編程》課程教學(xué)流程如圖1所示。
1.知識(shí)講解案例化
在CDIO教育理念中,學(xué)生掌握基礎(chǔ)知識(shí)是工程教育的前提。CDIO教學(xué)模式并非是減少基礎(chǔ)知識(shí)的學(xué)習(xí),而是通過工程項(xiàng)目實(shí)踐,加強(qiáng)學(xué)生對(duì)基礎(chǔ)知識(shí)的學(xué)習(xí)與理解,使之具有更扎實(shí)的理論基礎(chǔ)知識(shí)和更強(qiáng)的分析解決問題能力。在教學(xué)實(shí)施中,對(duì)每一個(gè)教學(xué)模塊,教師要選擇好一個(gè)難度適當(dāng)、與教學(xué)內(nèi)容及知識(shí)點(diǎn)緊密相關(guān)的項(xiàng)目,并把項(xiàng)目拆分成若干個(gè)知識(shí)點(diǎn),對(duì)每個(gè)知識(shí)點(diǎn)進(jìn)行案例化。教師可以把該教學(xué)模塊的知識(shí)點(diǎn)及案例以翻轉(zhuǎn)課堂或微課等混合式教學(xué)形式布置給學(xué)生進(jìn)行學(xué)習(xí)。在課堂教學(xué)中,教師主要對(duì)學(xué)生不易理解的知識(shí)點(diǎn)進(jìn)行重點(diǎn)講解,對(duì)學(xué)生在項(xiàng)目中出現(xiàn)的問題進(jìn)行答疑解惑,學(xué)生對(duì)實(shí)現(xiàn)的項(xiàng)目進(jìn)行演示與評(píng)估,教師對(duì)項(xiàng)目進(jìn)行點(diǎn)評(píng)。
2.能力培養(yǎng)項(xiàng)目化
工程教育最終要回歸到工程實(shí)踐。在實(shí)踐中,主要培養(yǎng)學(xué)生的基本技能、人生態(tài)度、交流溝通、團(tuán)隊(duì)協(xié)作能力和創(chuàng)新能力。項(xiàng)目實(shí)踐是工程教育最有效的形式。在《JAVA網(wǎng)絡(luò)編程》課程教學(xué)中,我們根據(jù)項(xiàng)目“構(gòu)思、設(shè)計(jì)、實(shí)現(xiàn)、運(yùn)行”的生命周期,采用能力培養(yǎng)項(xiàng)目化的形式組織教學(xué),其具體實(shí)施步驟如下:①教師根據(jù)教學(xué)內(nèi)容選擇設(shè)計(jì)相應(yīng)的項(xiàng)目,把項(xiàng)目任務(wù)發(fā)布給各項(xiàng)目小組。項(xiàng)目小組一般2—3人,事先通過學(xué)生自由組合或指配的形式劃分項(xiàng)目小組。項(xiàng)目小組收到項(xiàng)目任務(wù)后,對(duì)項(xiàng)目組人員進(jìn)行分工,每個(gè)組員承擔(dān)不同的角色,集體查閱相關(guān)資料對(duì)項(xiàng)目進(jìn)行需求分析,并檢查自己的知識(shí)儲(chǔ)備與不足,及時(shí)地反饋給教師(構(gòu)思階段)。教師對(duì)知識(shí)點(diǎn)進(jìn)行案例化講解,并幫助學(xué)生指出需求的不足,讓學(xué)生進(jìn)一步明確項(xiàng)目需求。②項(xiàng)目小組根據(jù)需求,擬定設(shè)計(jì)方案,并提交教師審核;教師幫助指導(dǎo)項(xiàng)目小組修正好設(shè)計(jì)方案(設(shè)計(jì)階段)。項(xiàng)目小組根據(jù)設(shè)計(jì)方案分工合作進(jìn)行項(xiàng)目實(shí)現(xiàn),并及時(shí)反饋項(xiàng)目進(jìn)度以及遇到的困難給教師,教師指導(dǎo)、督促項(xiàng)目小組完成項(xiàng)目(實(shí)現(xiàn)階段)。③由各項(xiàng)目小組自評(píng)項(xiàng)目,提供自評(píng)報(bào)告,向教師與其他項(xiàng)目小組演示項(xiàng)目成果,教師與其他項(xiàng)目小組評(píng)價(jià)項(xiàng)目的完成情況,教師對(duì)項(xiàng)目進(jìn)行點(diǎn)評(píng),項(xiàng)目小組根據(jù)評(píng)價(jià)情況反思并完善項(xiàng)目,并把完善后的項(xiàng)目提交給教師,由教師根據(jù)實(shí)現(xiàn)情況及各方面的評(píng)價(jià)給出成績(jī)(運(yùn)行階段)。
3.課程考核全面化
傳統(tǒng)的課程考核模式是以平時(shí)成績(jī)加期末考試成績(jī)組成。對(duì)于操作性很強(qiáng)的《JAVA網(wǎng)絡(luò)編程》課程,這種考核方式不能反映學(xué)生的能力素養(yǎng),更不能評(píng)價(jià)學(xué)生的學(xué)習(xí)過程。因此在筆者的教學(xué)模式里,形成了全面化的考核評(píng)價(jià)方式來評(píng)價(jià)表1所示的培養(yǎng)目標(biāo):以平時(shí)成績(jī)來檢驗(yàn)學(xué)生的學(xué)習(xí)能力與基本素養(yǎng)的形成;以期末成績(jī)來衡量基礎(chǔ)知識(shí)與專業(yè)知識(shí)的掌握情況;以項(xiàng)目完成情況與質(zhì)量來評(píng)價(jià)學(xué)生的專業(yè)技能、團(tuán)隊(duì)協(xié)作能力、分析解決問題能力和創(chuàng)新能力。其中,平時(shí)成績(jī)占課程總成績(jī)的40%,主要根據(jù)課堂教學(xué)的出勤、課堂表現(xiàn)、跟教師的交流溝通、回答問題的情況由教師打分決定;期末考試成績(jī)占課程總成績(jī)的30%;項(xiàng)目成績(jī)占課程總成績(jī)的30%,其成績(jī)大致為:學(xué)生根據(jù)自己在項(xiàng)目中的貢獻(xiàn)與表現(xiàn)自評(píng)(占項(xiàng)目成績(jī)的20%),項(xiàng)目小組根據(jù)組員在項(xiàng)目中的貢獻(xiàn)情況給予組員評(píng)價(jià)(占項(xiàng)目成績(jī)的40%),其他項(xiàng)目組對(duì)項(xiàng)目小組項(xiàng)目的完成情況及文檔進(jìn)行評(píng)價(jià)(占項(xiàng)目成績(jī)的20%),教師對(duì)項(xiàng)目小組項(xiàng)目的完成情況、文檔及成員貢獻(xiàn)情況進(jìn)行評(píng)價(jià)(占項(xiàng)目成績(jī)的20%)。
四、結(jié)束語(yǔ)
經(jīng)過近兩年的基于CDIO理念的《JAVA網(wǎng)絡(luò)編程》教學(xué)模式實(shí)踐, 筆者從學(xué)生的課堂表現(xiàn)、項(xiàng)目實(shí)現(xiàn)和考試情況等方面對(duì)教學(xué)效果進(jìn)行了觀察與評(píng)估。在課堂上學(xué)生能夠積極主動(dòng)地表達(dá)自己的見解,提出自己的疑惑,有強(qiáng)烈的學(xué)習(xí)欲望;在項(xiàng)目中,學(xué)生能夠獨(dú)立查閱類庫(kù)和自學(xué)相關(guān)的技術(shù)編寫程序,能夠獨(dú)立地調(diào)試程序中的錯(cuò)誤,嘗試用各種不同的方法去實(shí)現(xiàn)程序的功能,而且團(tuán)隊(duì)合作能力、文檔撰寫能力都有了顯著的提升;在項(xiàng)目答辯中,能夠清楚地展示項(xiàng)目的功能,從容地回答問題;在理論學(xué)習(xí)中,學(xué)生不僅知其然,而且知其所以然,考試成績(jī)有了較大的提高。教學(xué)實(shí)踐表明,該教學(xué)模式有效地把理論知識(shí)與工程實(shí)踐融合在一起,提高了學(xué)生的主觀能動(dòng)性和學(xué)習(xí)熱情,培養(yǎng)了學(xué)生的網(wǎng)絡(luò)編程能力與工程實(shí)踐能力。在后續(xù)的教學(xué)過程中,教師還將加強(qiáng)與學(xué)生的溝通與交流,不斷改進(jìn)教學(xué)方法,完善教學(xué)模式,更好地提高教學(xué)效果。
參考文獻(xiàn):
[1]林睦綱,姜小奇,魏書堤,等.《網(wǎng)絡(luò)編程》課程教學(xué)改革研究與探索[J].福建電腦,2011,27(1):37-38.
[2]劉青云,焦鉻,陳堅(jiān)禎.MIMPS教學(xué)法在網(wǎng)絡(luò)編程實(shí)踐課程中的應(yīng)用研究[J].福建電腦,2018,34(7):79-80+128.
[3]王碩旺,洪成文.CDIO:美國(guó)麻省理工學(xué)院工程教育的經(jīng)典模式——基于對(duì)CDIO課程大綱的解讀[J].理工高教研究,2009(4):116-119.
[4]顧學(xué)雍.聯(lián)結(jié)理論與實(shí)踐的CDIO——清華大學(xué)創(chuàng)新性工程教育的探索[J].高等工程教育研究,2009(1):11-23.
[5]王剛.CDIO工程教育模式的解讀與思考[J].中國(guó)高教研究,2009(5):86-87.
[6]葉民,孔寒冰,張煒.新工科:從理念到行動(dòng)[J].高等工程教育研究,2018(1):24-31.
[7]顧佩華,胡文龍,陸小華,等.從CDIO在中國(guó)到中國(guó)的CDIO:發(fā)展路徑、產(chǎn)生的影響及其原因研究[J].高等工程教育研究,2017(1):24-43.
[8]康全禮,丁飛己.中國(guó)CDIO工程教育模式研究的回顧與反思[J].高等工程教育研究,2016(4):40-46.
[9]林宏,李彤,張雁,等.基于CDIO工程教育模式的Java程序設(shè)計(jì)課程建設(shè)與改革[J].云南民族大學(xué)學(xué)報(bào)(自然科學(xué)版),2020,29(2):133-139.
[10]朱輝,朱志國(guó),李剛.Java網(wǎng)絡(luò)程序設(shè)計(jì)[M].西安:西安電子科技大學(xué)出版社,2014.
[11]董相志,唐玉凱,張?jiān)缽?qiáng),等.Java網(wǎng)絡(luò)編程案例教程[M].北京:清華大學(xué)出版,2017.
[12]唐四薪.TCP/IP網(wǎng)絡(luò)編程項(xiàng)目式教程[M].北京:清華大學(xué)出版社,2019.(編輯:李曉萍)