【摘 要】一般高職院校都會(huì)在軟件技術(shù)專(zhuān)業(yè)開(kāi)設(shè)Java程序設(shè)計(jì)這門(mén)課,并將其設(shè)定為專(zhuān)業(yè)核心課程。對(duì)于專(zhuān)業(yè)核心課程的講授,多數(shù)高職院校都會(huì)采用基于工作過(guò)程的項(xiàng)目化授課方式,而在這個(gè)過(guò)程中教學(xué)項(xiàng)目的選擇、設(shè)計(jì)與實(shí)現(xiàn)無(wú)疑是重中之重,本文將以Java程序設(shè)計(jì)課程為例,闡述其教學(xué)項(xiàng)目的選擇、設(shè)計(jì)與實(shí)現(xiàn)的過(guò)程。
【關(guān)鍵詞】基于工作過(guò)程 Java程序設(shè)計(jì) 教學(xué)項(xiàng)目 設(shè)計(jì)與實(shí)現(xiàn)
【中圖分類(lèi)號(hào)】 G642 【文獻(xiàn)標(biāo)識(shí)碼】 A 【文章編號(hào)】 2095-6517(2014)09-0120-01
一方面,Java是面向?qū)ο蟆⒅С侄嗑€程的解釋型網(wǎng)絡(luò)編程語(yǔ)言。它是目前Internet最流行的編程語(yǔ)言之一,具有高度的安全性、可移植性和代碼可重用性。另一方面,從各大招聘網(wǎng)站對(duì)于軟件程序員及軟件工程師的招聘條件可以看出,一般在招聘崗位涉及到軟件程序員及軟件工程師時(shí),對(duì)Java軟件程序員及軟件工程師的需求量最大。因此Java語(yǔ)言的應(yīng)用及就業(yè)前景都非常樂(lè)觀,那么如何講授Java程序設(shè)計(jì)這門(mén)課,使學(xué)生達(dá)到所學(xué)即所用的教學(xué)目標(biāo),基于工作過(guò)程的項(xiàng)目化授課,無(wú)疑是最好的選擇,而在這個(gè)過(guò)程中教學(xué)項(xiàng)目的選擇、設(shè)計(jì)與實(shí)現(xiàn)是保證課程有效性的重要支撐要素,因此本文將對(duì)教學(xué)項(xiàng)目的選擇、設(shè)計(jì)與實(shí)現(xiàn)進(jìn)行深入探討。
一、教學(xué)項(xiàng)目的選擇
1.教學(xué)項(xiàng)目來(lái)源于軟件企業(yè)
這種方式的優(yōu)點(diǎn)在于項(xiàng)目貼近實(shí)際,實(shí)踐價(jià)值高。但對(duì)于初學(xué)者來(lái)說(shuō),不建議將企業(yè)項(xiàng)目拿來(lái)直接應(yīng)用于教學(xué),因?yàn)槠髽I(yè)項(xiàng)目的程序編碼既然貼近實(shí)際,必然代碼結(jié)構(gòu)復(fù)雜,集成度高,代碼量大,這些都不利于初學(xué)者的學(xué)習(xí)。
2.教師設(shè)計(jì)教學(xué)項(xiàng)目
這種方式就是教師將所要講授的內(nèi)容進(jìn)行整理、劃分,將其融入到所設(shè)計(jì)的教學(xué)項(xiàng)目中。這里需要注意的是教學(xué)項(xiàng)目不一定規(guī)模很大,只要包含所授知識(shí)點(diǎn)內(nèi)容即可,另外,教師在設(shè)計(jì)此類(lèi)教學(xué)項(xiàng)目時(shí),還要注意其實(shí)用性及軟件編碼規(guī)范,因?yàn)闆](méi)有實(shí)用性的軟件,不會(huì)激發(fā)學(xué)生的學(xué)習(xí)熱情。此種方式的優(yōu)點(diǎn)在于代碼結(jié)構(gòu)不復(fù)雜,代碼量相對(duì)較小,更容易被學(xué)生接受理解,更適于初學(xué)者學(xué)習(xí)。
二、教學(xué)項(xiàng)目的設(shè)計(jì)原則
根據(jù)北京師范大學(xué)教育技術(shù)學(xué)院技術(shù)與職業(yè)教育研究所趙志群教授對(duì)基于工作過(guò)程的課程開(kāi)發(fā)中教學(xué)項(xiàng)目的標(biāo)準(zhǔn),設(shè)計(jì)教學(xué)項(xiàng)目時(shí)應(yīng)注意如下幾點(diǎn):
第一,教學(xué)項(xiàng)目應(yīng)具有輪廓清晰的工作、學(xué)習(xí)任務(wù),具有明確而具體的成果演示。
第二,教學(xué)項(xiàng)目應(yīng)具有完整的工作過(guò)程,該工作過(guò)程可用于學(xué)習(xí)特定教學(xué)內(nèi)容。
第三,教學(xué)項(xiàng)目能將某一教學(xué)課題的理論知識(shí)和實(shí)踐技能結(jié)合在一起。
第四,教學(xué)項(xiàng)目應(yīng)使學(xué)生有獨(dú)立進(jìn)行計(jì)劃工作的機(jī)會(huì),在一定時(shí)間范圍內(nèi)可以自行組織、安排自己的學(xué)習(xí)行為。
第五,教學(xué)項(xiàng)目應(yīng)使學(xué)生自己處理在項(xiàng)目中出現(xiàn)的問(wèn)題。
第六,教學(xué)項(xiàng)目應(yīng)具有一定難度,不僅是對(duì)已有知識(shí)、技能的應(yīng)用,而且要求學(xué)生運(yùn)用已有知識(shí),在一定范圍內(nèi)學(xué)習(xí)新的知識(shí)技能,解決過(guò)去從未遇到過(guò)的實(shí)際問(wèn)題。
三、教學(xué)項(xiàng)目的設(shè)計(jì)與實(shí)現(xiàn)
1.整理教學(xué)內(nèi)容,并對(duì)其進(jìn)行合理劃分
一般來(lái)說(shuō),Java程序設(shè)計(jì)課程教學(xué)內(nèi)容包含:Java開(kāi)發(fā)環(huán)境、Java語(yǔ)法基礎(chǔ)、面向?qū)ο缶幊獭惓L幚怼D形與用戶(hù)界面、集合應(yīng)用、輸入輸出流、多線程編程、網(wǎng)絡(luò)編程等。經(jīng)過(guò)整理及劃分,創(chuàng)建四個(gè)教學(xué)項(xiàng)目包含以上教學(xué)內(nèi)容。具體如下:
第一,項(xiàng)目一:Java開(kāi)發(fā)環(huán)境配置,包含JDK的安裝及配置,以及eclipse平臺(tái)的應(yīng)用。其涵蓋了與Java開(kāi)發(fā)環(huán)境等相關(guān)的知識(shí)點(diǎn)。
第二,項(xiàng)目二:命令行版通訊錄管理,其功能為實(shí)現(xiàn)通過(guò)命令行對(duì)不同分類(lèi)(如:同事、親人、朋友等)人員信息的增、刪、改、查詢(xún)等操作。其涵蓋了Java語(yǔ)法基礎(chǔ)、面向?qū)ο缶幊獭惓L幚淼认嚓P(guān)知識(shí)點(diǎn)。
第三,項(xiàng)目三:圖形版通訊錄管理,其功能為通過(guò)圖形用戶(hù)界面實(shí)現(xiàn)對(duì)通訊錄的管理(按不同分類(lèi),實(shí)現(xiàn)增、刪、改、查詢(xún)等操作),并將通訊錄內(nèi)存儲(chǔ)信息導(dǎo)出至文本文件中存放。其涵蓋了圖形用戶(hù)界面、輸入輸出流等相關(guān)知識(shí)點(diǎn)。
第四,項(xiàng)目四:局域網(wǎng)聊天室,其功能為通過(guò)基于圖形用戶(hù)界面實(shí)現(xiàn)局域網(wǎng)聊天。其涵蓋了多線程及網(wǎng)絡(luò)編程等相關(guān)知識(shí)點(diǎn)。
2.將教學(xué)項(xiàng)目細(xì)化為適宜教學(xué)實(shí)現(xiàn)的多個(gè)教學(xué)單元即任務(wù)
第一,任務(wù)一:需求分析,分析局域網(wǎng)聊天室功能。如軟件能夠?qū)崿F(xiàn)私聊及廣播通信。
第二,任務(wù)二:軟件設(shè)計(jì),根據(jù)需求分析確定軟件設(shè)計(jì),即整個(gè)軟件分為服務(wù)器端及客戶(hù)端。其中服務(wù)器端任務(wù),偵聽(tīng)是否有客戶(hù)端連接或者斷開(kāi)連接,所有客戶(hù)端的信息都傳到服務(wù)器端,由服務(wù)器端根據(jù)要求分發(fā)信息;客戶(hù)端完成任務(wù),與服務(wù)器端建立通信通道,向服務(wù)器端發(fā)送信息,并接收來(lái)自服務(wù)器的信息。
第三,任務(wù)三:代碼實(shí)現(xiàn),將軟件設(shè)計(jì)階段服務(wù)器及客戶(hù)端完成的功能用相應(yīng)代碼進(jìn)行實(shí)現(xiàn)。這個(gè)階段是重點(diǎn),需要學(xué)生提前了解多線程及網(wǎng)絡(luò)編程知識(shí)。必要時(shí)教師可以進(jìn)行集中講解。
第四,任務(wù)四:系統(tǒng)測(cè)試,測(cè)試服務(wù)器端與多個(gè)客戶(hù)端是否能夠按照需求分析所列要求正常工作。
第五,任務(wù)五:運(yùn)行維護(hù),對(duì)局域網(wǎng)聊天室的功能進(jìn)行優(yōu)化及補(bǔ)充。
以上是筆者針對(duì)Java程序設(shè)計(jì)課程教學(xué)項(xiàng)目選擇、設(shè)計(jì)與實(shí)現(xiàn)方面的一些經(jīng)驗(yàn),當(dāng)然,這些經(jīng)驗(yàn)也同樣適用于其它編程語(yǔ)言,因?yàn)榫幊陶Z(yǔ)言本質(zhì)都是相通的,希望這些經(jīng)驗(yàn)對(duì)講授相關(guān)課程的教師有所幫助。
【參考文獻(xiàn)】
[1] 趙志群.職業(yè)教育工學(xué)結(jié)合一體化課程開(kāi)發(fā)指南.北京:清華大學(xué)出版社,2009.
[2] 歐盟Asia-Link項(xiàng)目“關(guān)于課程開(kāi)發(fā)的課程設(shè)計(jì)”課題組編. 學(xué)習(xí)領(lǐng)域課程開(kāi)發(fā)手冊(cè).北京:高等教育出版社,2007.