


摘要:針對高校Java語言教學(xué)與實踐課程內(nèi)容,分析國內(nèi)外Java應(yīng)用市場與教學(xué)現(xiàn)狀,提出以JavaSE課程為核心,延伸Java在Web企業(yè)應(yīng)用和Android移動開發(fā)的專業(yè)課程設(shè)置,兼顧數(shù)據(jù)庫使用和軟件工程實踐的任務(wù)與項目驅(qū)動教學(xué)模式,探討Java課程教學(xué)體系的構(gòu)建與實施。
關(guān)鍵詞:Java課程;教學(xué)體系構(gòu)建;Web企業(yè)應(yīng)用;Android移動開發(fā)
文章編號:1672-5913(2013)18-0083-04
中圖分類號:G642
根據(jù)2013年4月最新TIOBE開發(fā)語言排行榜公布的排名結(jié)果,Java語言再次位居榜首。為適應(yīng)行業(yè)及科研軟件開發(fā)對Java編程人員的實際需求,吉林大學(xué)在計算機編程類語言最新教學(xué)內(nèi)容中,擴充Java語言課程內(nèi)容,拓展Java的Web企業(yè)應(yīng)用與Andriod移動平臺開發(fā)實踐課程。
1 Java社會需求
由于Java語言“一次編寫,到處運行”的特點,使其在國內(nèi)外軟件開發(fā)企業(yè)中的使用比例排名第一。Java編程人員的需求市場廣闊,僅以51job人才招聘網(wǎng)2013年7月的發(fā)布消息為例,關(guān)于Java招聘的崗位信息多達(dá)4萬余條。
在企業(yè)級應(yīng)用方面,據(jù)W3Techs公司2013年6月統(tǒng)計數(shù)字顯示,服務(wù)器端最為流行的5種常用計算機語言中,Java是企業(yè)級高訪問量網(wǎng)站的首選。自2008年以來基于Java語言的Android系統(tǒng)迅速普及。2013年5月,據(jù)市場調(diào)研公司Gartner的數(shù)據(jù)顯示,Android操作系統(tǒng)在全球智能手機操作系統(tǒng)占有率從去年同期的56.9%直線飆升至74.4%,并仍在提升。
2 Java教學(xué)現(xiàn)狀
鑒于Java的迅速普及和良好的跨平臺特性,Java已成為當(dāng)代成長最快的軟件產(chǎn)品之一,受到大約150個許可證頒發(fā)機構(gòu)、200所大學(xué)和50萬開發(fā)者的擁戴。從1997年起,美國麻省理工學(xué)院就設(shè)置了Java作為必修課。2002年,美國加州大學(xué)伯克利分校開設(shè)了25門Java相關(guān)課程。美國、澳大利亞、新加坡等國家90%以上的高校開設(shè)了Java課程,甚至一些文科專業(yè)都競相開設(shè)該課程。世界計算機排名前列的高校,均開設(shè)有Java及其相關(guān)課程,詳見表1。
在我國最新教育部計算機基礎(chǔ)課程教學(xué)指導(dǎo)委員會制定的白皮書中,Java課程被列為核心課程之一。國內(nèi)高校從1997年開始陸續(xù)開設(shè)Java相關(guān)基礎(chǔ)課程,在原有的C和C++基礎(chǔ)上。新增Java編程課程;2012年國內(nèi)已有近80%的高校開設(shè)了Java及相關(guān)課程,僅2013年應(yīng)屆計算機專業(yè)學(xué)生就有近8萬人在校學(xué)習(xí)Java編程,2013年“華南資訊杯”廣東省Java程序員競賽中有74所高校的702支隊伍,共2094人報名。國內(nèi)高校Java課程開設(shè)情況,詳見表2。
3 Java教學(xué)體系構(gòu)建
在以往的Java教學(xué)過程中,學(xué)生雖然學(xué)習(xí)了多種語言及編程設(shè)計類課程,但真正設(shè)計項目時卻感覺自己不能完成該項目,原因在于Java語言教學(xué)開展的孤立性,以及基礎(chǔ)課程與實踐課程的不連續(xù)性。傳統(tǒng)Java語言課程教學(xué)與其他相關(guān)課程缺乏橫向融合,與實際項目開發(fā)縱向脫節(jié),學(xué)生學(xué)習(xí)Java過程中沒有應(yīng)用和項目開發(fā)的整體概念;由于Java編程語言基礎(chǔ)課和實踐課需要多學(xué)期共同完成,造成學(xué)生在學(xué)習(xí)Java語言過程中,前期基礎(chǔ)課程迷茫而無所適從,后期實踐課程感興趣但基礎(chǔ)不牢,進(jìn)而喪失對Java學(xué)習(xí)和使用的信心。
1)Java教學(xué)體系整體規(guī)劃。
在Java市場和人才培養(yǎng)需求面前,如何合理組織和安排Java課程的整體教學(xué),已成為我們急需探討和解決的問題。國內(nèi)外高校的Java教學(xué)中,基本上把整個Java的課程設(shè)置為1年,分為Java程序設(shè)計基礎(chǔ)知識部分與Java程序設(shè)計高級開發(fā)部分,其中基礎(chǔ)部分以Java程序設(shè)計為主,而高級程序開發(fā)部分則以J2EE以及J2ME課程為主。學(xué)生經(jīng)過第一個學(xué)期對Java基礎(chǔ)知識的掌握后,可以在下一學(xué)期開始高級開發(fā)部分的學(xué)習(xí)。在一些高校中,課堂上老師除了授課之外,課程設(shè)置中還專門安排了一些Tutorial的授課安排,相當(dāng)于課堂討論課。老師會預(yù)先給出教學(xué)中的重點、難點,同學(xué)們可根據(jù)自己的情況及時發(fā)言或討論,從中獲得自己想要的東西。
參照國內(nèi)外多所高校的Java教學(xué)計劃,依據(jù)吉林大學(xué)最新教學(xué)大綱的編程類語言教學(xué)內(nèi)容,筆者所在團(tuán)隊提出了Java課程教學(xué)體系構(gòu)建方案,如圖1所示。在高級語言程序設(shè)計和面向?qū)ο蟪绦蛟O(shè)計的C和C++語言基礎(chǔ)上,依托算法設(shè)計和數(shù)據(jù)結(jié)構(gòu)課程,從第4學(xué)期開始Java課程教學(xué);以Java SE為核心,側(cè)重理論結(jié)合實踐,注重程序和架構(gòu)的設(shè)計,突出實踐對于Web企業(yè)應(yīng)用和Android移動開發(fā)的重要作用;在任務(wù)和項目驅(qū)動教學(xué)理念下,制訂實踐教學(xué)內(nèi)容,詳見表3;強調(diào)數(shù)據(jù)庫應(yīng)用在其中的重要地位,融入架構(gòu)設(shè)計和團(tuán)隊開發(fā)等實際軟件工程內(nèi)容,為學(xué)生實際操作提供支持。
2)Java程序設(shè)計課程。
Java程序設(shè)計課程是Java語言的基礎(chǔ),側(cè)重Java基本語法和數(shù)據(jù)結(jié)構(gòu),是Java教學(xué)體系整體框架中的核心部分,也是后期以Java為核心語言專業(yè)課程開設(shè)的基礎(chǔ)。
Java程序設(shè)計課程設(shè)立在第4學(xué)期,以JavaSE為主,在介紹和講解Java基本語法概念的同時,需要學(xué)生深入理解面向?qū)ο缶幊趟枷耄⑦M(jìn)一步深刻認(rèn)識不同數(shù)據(jù)結(jié)構(gòu)間的內(nèi)在關(guān)系;通過各章節(jié)實例,學(xué)生應(yīng)熟練掌握一套Java IDE編程環(huán)境(如Eclipse或NetBeans等),進(jìn)行程序的編寫和調(diào)試;并通過上機實踐,實現(xiàn)具有簡單界面的單機應(yīng)用程序,如記事本和學(xué)生成績登記等,詳見表3,熟悉數(shù)據(jù)庫的基本連接和使用,為后續(xù)以任務(wù)與項目為驅(qū)動的教學(xué)模式奠定開發(fā)環(huán)境基礎(chǔ);同時在整個授課過程中,貫徹面向?qū)ο蟪绦蛟O(shè)計思想,強調(diào)先設(shè)計后動手的軟件工程設(shè)計理念,并穿插Java的企業(yè)應(yīng)用Web開發(fā)和基于Java的移動設(shè)備Android開發(fā)中的延伸應(yīng)用示例,給學(xué)生以實際應(yīng)用的概念,為后續(xù)Java EE的Web企業(yè)應(yīng)用和Android移動開發(fā)實踐課程奠定應(yīng)用基礎(chǔ)。
3)Web企業(yè)應(yīng)用課程。
Java在高訪問量網(wǎng)站中占有很高份額,是當(dāng)今Web企業(yè)級應(yīng)用的首選,這需要Java在Web企業(yè)應(yīng)用中提供更多組織團(tuán)隊協(xié)作開發(fā)的機制,并考慮更多安全性和架構(gòu)細(xì)節(jié)。
Java企業(yè)應(yīng)用課程開設(shè)在第5學(xué)期,以JavaEE為核心技術(shù),是對項目實踐動手能力要求較高的課程,需要學(xué)生在數(shù)據(jù)庫原理與軟件工程基礎(chǔ)上,進(jìn)行規(guī)范化的項目工程構(gòu)建與開發(fā)。在介紹前臺界面Bootstrap與控制器Struts開發(fā)、中間業(yè)務(wù)層Spring管理和Hibernate與MyBatis數(shù)據(jù)庫映射等架構(gòu)內(nèi)容的同時,需要學(xué)生了解Web開發(fā)的大量基礎(chǔ)知識,如HTML、CSS和JavaScript等;并通過設(shè)計、實現(xiàn)、測試、調(diào)試、發(fā)布和維護(hù)中小型企業(yè)應(yīng)用的Java Web項目開發(fā)實踐,使學(xué)生自身技術(shù)水平在短期內(nèi)得以迅速提升,進(jìn)而將Java基本概念、基本理論和實踐技能融入到具體的Java Web程序和集成開發(fā)環(huán)境中去。
Java Web企業(yè)應(yīng)用課程以實踐課程形式在機房進(jìn)行講授,提倡任務(wù)與項目為驅(qū)動的教學(xué)模式,教師在講授16學(xué)時基礎(chǔ)課內(nèi)容后,利用32學(xué)時進(jìn)行SSH輕量級Web應(yīng)用實際項目開發(fā)。搭建由前臺查詢、后臺建庫、中間層耦合配置的網(wǎng)站建設(shè),如新聞發(fā)布網(wǎng)站和網(wǎng)上交易系統(tǒng)等實際企業(yè)應(yīng)用項目搭建,詳見表3。學(xué)生以分組分工協(xié)作形式完成項目內(nèi)容,最終提交設(shè)計文檔,并提供程序演示等內(nèi)容。
4)Android移動開發(fā)課程。
隨著基于Java語言的Android系統(tǒng)迅速普及,對于Android開發(fā)人員的人才需求急劇增加。對于Java開發(fā)者來說,以前主要在Java EE平臺上從事服務(wù)器端應(yīng)用開發(fā),但在計算機便攜化的趨勢下,Java開發(fā)者面臨著為這些應(yīng)用程序開發(fā)客戶端的需求。
對于Java開發(fā)者來說,Android應(yīng)用開發(fā)既是一個挑戰(zhàn),也是一個機遇。Android系統(tǒng)是一個新的發(fā)展趨勢,作為Java程序設(shè)計課程的接續(xù)與延伸性實踐課程,Android課程開設(shè)于第6學(xué)期,目的是使學(xué)生掌握Android系統(tǒng)開發(fā)的基本方法和流程,熟悉Android SDK、GUI基本控件、數(shù)據(jù)交互與存儲以及移動設(shè)備特性等內(nèi)容,從而為學(xué)生深入學(xué)習(xí)Android高級開發(fā)奠定堅實基礎(chǔ),有利于拓展學(xué)生就業(yè)途徑,為其提供創(chuàng)業(yè)機會,具有良好的社會效益。
Android課程仍然以實踐課程形式在機房進(jìn)行講授,延續(xù)任務(wù)與項目為驅(qū)動的教學(xué)模式,時時操作。教師在講授16學(xué)時基礎(chǔ)課程內(nèi)容后,利用32學(xué)時進(jìn)行Android手機應(yīng)用項目實際開發(fā)。搭建由前臺查詢、遠(yuǎn)程建庫、模擬查詢和利用移動設(shè)備特殊傳感器的項目建設(shè),如手機通訊錄、手持小游戲和網(wǎng)站客戶端開發(fā)等,詳見表3。同樣,學(xué)生以分組分工協(xié)作形式完成項目內(nèi)容,最終提交設(shè)計文檔,并提供程序演示等內(nèi)容。
4 結(jié)語
Java語言作為跨平臺的面向?qū)ο笳Z言,在近10年的流行開發(fā)語言排名中位居前茅,在Web企業(yè)級應(yīng)用和移動設(shè)備開發(fā)中更是發(fā)展迅猛。在龐大的Java市場和人才培養(yǎng)需求面前,需要教師提供合理的課程講授體系和實踐內(nèi)容支撐,構(gòu)建以提高學(xué)生能力和素質(zhì)為目標(biāo)的Java人才培養(yǎng)教學(xué)體系架構(gòu)。
(編輯:趙廓)