摘 要 JavaEE程序設(shè)計(jì)課程教學(xué)效果的提升對(duì)計(jì)算機(jī)專業(yè)學(xué)生能力的培養(yǎng)和就業(yè)至關(guān)重要,本文從課程的特點(diǎn)出發(fā),圍繞教學(xué)重點(diǎn)難點(diǎn)、教學(xué)內(nèi)容、教學(xué)方式、職業(yè)素質(zhì)培養(yǎng)和考核方法等方面對(duì)該課程教學(xué)改革進(jìn)行了探索。
關(guān)鍵詞 JavaEE 教學(xué)改革 本科教學(xué)
中圖分類號(hào):G424 文獻(xiàn)標(biāo)識(shí)碼:A
On Teaching Reform of JavaEE Programming
ZHAO Chunsheng
(Sichuan University of Science & Engineering, Zigong, Sichuan 643000)
Abstract JavaEE program designed to enhance the effectiveness of teaching training and employment is crucial for computer science students' abilities, the paper starting from the characteristics of the course, focusing on the teaching aspects of the key and difficult, teaching content, teaching methods, professional quality training and assessment methods, such as the curriculum teaching explored.
Key words JavaEE; teaching reform; undergraduate teaching
0 引言
JavaEE是一套全然不同于傳統(tǒng)應(yīng)用開(kāi)發(fā)的技術(shù)架構(gòu),其核心是一組技術(shù)規(guī)范與指南,其主要優(yōu)勢(shì)在于可簡(jiǎn)化且規(guī)范應(yīng)用系統(tǒng)的開(kāi)發(fā)與部署,提高應(yīng)用系統(tǒng)的可移植性、安全與再用價(jià)值。當(dāng)前,IT企業(yè)對(duì)JavaEE工程師的需求量很大,IDC統(tǒng)計(jì)數(shù)據(jù)顯示JavaEE人才占軟件開(kāi)發(fā)人才需求的80%左右。針對(duì)行業(yè)的現(xiàn)實(shí)需求,許多學(xué)校都為計(jì)算機(jī)相關(guān)專業(yè)的同學(xué)開(kāi)設(shè)了JavaEE程序設(shè)計(jì)的相關(guān)課程,主要介紹JavaEE技術(shù)的基本概念,講解JavaEE平臺(tái)下的各種編程技術(shù)、方法以及相關(guān)工具的應(yīng)用。該課程是以數(shù)據(jù)結(jié)構(gòu)、軟件工程、數(shù)據(jù)庫(kù)、Java程序設(shè)計(jì)、Web程序設(shè)計(jì)等眾多計(jì)算機(jī)專業(yè)課程為基礎(chǔ)的一門(mén)高度綜合,理論與實(shí)踐緊密結(jié)合的課程。該課程對(duì)于學(xué)生走上工作崗位的重要性不言而喻。
通過(guò)對(duì)畢業(yè)生的就業(yè)狀態(tài)調(diào)研分析不難發(fā)現(xiàn),當(dāng)前學(xué)校的培養(yǎng)和教學(xué)模式與企業(yè)的真實(shí)需求有非常大的差距,形成了當(dāng)前軟件企業(yè)求賢若渴,而畢業(yè)生“走投無(wú)路”的矛盾局面。造成該局面的主要問(wèn)題在于,當(dāng)前計(jì)算機(jī)本科專業(yè)教學(xué)中“只見(jiàn)樹(shù)木,不見(jiàn)森林”的教學(xué)模式,空講理論,不重實(shí)踐,讓學(xué)生滿頭霧水和一臉茫然,學(xué)生覺(jué)得課程難度大且枯燥無(wú)味,造成絕大部分畢業(yè)生都沒(méi)有完整的項(xiàng)目開(kāi)發(fā)經(jīng)歷,對(duì)軟件開(kāi)發(fā)缺乏完整的、清晰的認(rèn)識(shí)。因此,對(duì)JavaEE程序設(shè)計(jì)相關(guān)課程的教學(xué)改革,值得深入研究和探索。
1 JavaEE程序設(shè)計(jì)課程介紹
JavaEE相關(guān)課程與其他計(jì)算機(jī)基礎(chǔ)課程相比,內(nèi)容繁多并且更趨向于應(yīng)用,是綜合性實(shí)踐性很強(qiáng)的專業(yè)課程,總體而言它具有以下幾個(gè)特點(diǎn)。(1)學(xué)習(xí)起點(diǎn)高。該課程要求學(xué)生已經(jīng)完成面向?qū)ο蟪绦蛟O(shè)計(jì)、Java程序設(shè)計(jì)、計(jì)算機(jī)網(wǎng)絡(luò)、軟件工程、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)庫(kù)原理及應(yīng)用、Web程序設(shè)計(jì)等先行課程的學(xué)習(xí)并熟練掌握相關(guān)知識(shí)與技巧。(2)實(shí)踐性強(qiáng)。JavaEE是企業(yè)級(jí)應(yīng)用的構(gòu)建平臺(tái),其每個(gè)知識(shí)點(diǎn)都完全體現(xiàn)在實(shí)踐中,脫離了實(shí)踐是不能學(xué)好這門(mén)課程的。(3)學(xué)習(xí)難度大。JavaEE核心涉及JSP、Servlet、JDBC、EJB、JSF、JMS等13類關(guān)鍵技術(shù),同時(shí),JavaEE作為Java語(yǔ)言最為活躍的體系,它不僅僅是一種標(biāo)準(zhǔn)平臺(tái),更多的表達(dá)著一種軟件架構(gòu)設(shè)計(jì)思想,能夠擴(kuò)展的技術(shù)非常廣闊,眾多技術(shù)的整合可能導(dǎo)致各種錯(cuò)誤和異常,某些疑難雜癥很難準(zhǔn)確定位,往往需要借助多方力量才能有效解決。
2 JavaEE程序設(shè)計(jì)課程教學(xué)改革初探
2.1 把握教學(xué)重點(diǎn)難點(diǎn)
相對(duì)于傳統(tǒng)的計(jì)算機(jī)基礎(chǔ)課程,JavaEE課程知識(shí)點(diǎn)多、涉及面廣、實(shí)踐性強(qiáng)。因此,在教學(xué)中把握重點(diǎn)和難點(diǎn)顯得尤為重要,具體而言包括:
(1)掌握J(rèn)avaEE典型的分層體系結(jié)構(gòu)。典型的JavaEE應(yīng)用是由客戶層、Web層、業(yè)務(wù)層和數(shù)據(jù)層組成,不同層有不同的支撐技術(shù),只有真正領(lǐng)會(huì)JavaEE體系結(jié)構(gòu)的精髓和運(yùn)行機(jī)制才能更好地運(yùn)用JavaEE技術(shù)進(jìn)行軟件開(kāi)發(fā)。
(2)JavaEE 技術(shù)規(guī)范的理解與應(yīng)用。JavaEE平臺(tái)核心包括JDBC,JNDI,EJB,RMI,Servlet,Java Mail等13種核心技術(shù),在理解每項(xiàng)技術(shù)的概念的同時(shí),還需要掌握其運(yùn)行機(jī)制以及在何時(shí)、何處需要使用這些技術(shù)。
(3)主流開(kāi)發(fā)工具的使用。學(xué)生需要掌握J(rèn)avaEE IDE的使用方法、JavaEE 應(yīng)用服務(wù)器和數(shù)據(jù)庫(kù)的配置管理技能,而且還要能綜合運(yùn)用這些工具進(jìn)行代碼編寫(xiě)、調(diào)試及部署。
(4)J2 EE輕量級(jí)框架技術(shù)。當(dāng)前流行的輕量級(jí)JavaEE 框架很多,基于MVC(模型、視圖和控制器)模式的主流框架包括Struts 和Spring, 提供數(shù)據(jù)訪問(wèn)持久層的主流框架有Hibernate等。Spring,Struts,Hibernate 三大框架的整合技術(shù),能幫助開(kāi)發(fā)者實(shí)現(xiàn)軟件的高效開(kāi)發(fā)。
2.2 與時(shí)俱進(jìn)更新教學(xué)內(nèi)容
JavaEE憑借開(kāi)源的特點(diǎn),相關(guān)技術(shù)發(fā)展日新月異,課程內(nèi)容的選擇對(duì)于教學(xué)效果的影響不言而喻。傳統(tǒng)的JavaEE教學(xué)主要圍繞JavaEE平臺(tái)中的核心技術(shù)進(jìn)行講解,JSP、Servlet等Web組件技術(shù)和EJB技術(shù)是主要內(nèi)容。然而EJB技術(shù)由于種種原因在實(shí)際應(yīng)用中用得較少,近年來(lái)基于JavaEE的開(kāi)發(fā)更注重輕量級(jí)框架的整合與應(yīng)用。因此,在教學(xué)中,應(yīng)該對(duì)EJB技術(shù)原理進(jìn)行概要性介紹,而將較多的課時(shí)來(lái)介紹當(dāng)前流行的一些框架技術(shù),比如Struts2,Hibernate,iBATIS,Spring等,并強(qiáng)調(diào)使用這些框架的場(chǎng)合和效果,增加學(xué)生對(duì)輕量級(jí)框架技術(shù)的興趣,方便學(xué)生課后做進(jìn)一步的深入學(xué)習(xí)和應(yīng)用。在期末的課程設(shè)計(jì)中,應(yīng)鼓勵(lì)學(xué)生使用這些框架技術(shù),來(lái)改善系統(tǒng)架構(gòu)、增強(qiáng)系統(tǒng)的可擴(kuò)展性、可移植性。這將對(duì)提升學(xué)生專業(yè)能力有很大的幫助。
本課程的教學(xué)內(nèi)容按照進(jìn)階式的教學(xué)思路,可以劃分為入門(mén)篇、基礎(chǔ)篇、框架篇、實(shí)戰(zhàn)篇。課程內(nèi)容安排如圖1所示。
圖1 分階段知識(shí)體系
2.3 轉(zhuǎn)變教學(xué)方式
JavaEE程序設(shè)計(jì)課程涉及的知識(shí)面廣、技術(shù)繁多,如果一如既往地采用傳統(tǒng)基礎(chǔ)課程的“教”和“學(xué)”,學(xué)生在“學(xué)”完之后往往也是有一頭霧水。學(xué)生對(duì)單個(gè)的知識(shí)點(diǎn)、一個(gè)一個(gè)的核心技術(shù)有一定的了解,但無(wú)法將其進(jìn)行有機(jī)結(jié)合為應(yīng)用服務(wù),難以達(dá)到教學(xué)目的。
在教學(xué)過(guò)程中應(yīng)貫穿實(shí)踐的鍛煉,選擇適當(dāng)?shù)捻?xiàng)目來(lái)驅(qū)動(dòng)教學(xué)。項(xiàng)目驅(qū)動(dòng)式的教學(xué)已經(jīng)被廣泛應(yīng)用在各種學(xué)科的教學(xué)中,強(qiáng)調(diào)以學(xué)生為中心,通過(guò)項(xiàng)目的“任務(wù)”驅(qū)動(dòng)來(lái)加強(qiáng)和維持學(xué)生的學(xué)習(xí)動(dòng)機(jī),通過(guò)項(xiàng)目的開(kāi)發(fā)和完成提高學(xué)生的實(shí)際動(dòng)手能力。同時(shí),鼓勵(lì)學(xué)生將抽象的技術(shù)運(yùn)用到實(shí)踐中,有了切身的體會(huì),他們才能真正了解JavaEE體系結(jié)構(gòu),真正掌握J(rèn)avaEE所涉及的核心技術(shù)。
2.4 注意職業(yè)素質(zhì)的培養(yǎng)
學(xué)生要真正走上軟件開(kāi)發(fā)的職業(yè)道路,授課中除了知識(shí)和技能的傳授外,還應(yīng)該始終注重職業(yè)素質(zhì)的培養(yǎng)。主要包括:(1)培養(yǎng)學(xué)生的適應(yīng)能力、自學(xué)能力、抗壓能力;(2)培養(yǎng)學(xué)生的規(guī)范意識(shí)、溝通意識(shí)、合作意識(shí);(3)培養(yǎng)守時(shí)、踏實(shí)、耐心的習(xí)慣。只有具備了“三個(gè)能力、三個(gè)意識(shí)、三個(gè)習(xí)慣”這樣的基本職業(yè)素質(zhì),才能在行業(yè)中獲得良好的發(fā)展。在整個(gè)學(xué)習(xí)過(guò)程中,監(jiān)督并要求學(xué)生能夠不斷審視自己、養(yǎng)成良好工作習(xí)慣,有助于其順利完成從“學(xué)生”到“企業(yè)人”的飛躍。
2.5 改革傳統(tǒng)考核方式
傳統(tǒng)的一張?jiān)嚲淼目己朔绞饺菀讓?dǎo)致學(xué)生死記硬背,對(duì)于突出實(shí)踐性要求的JavaEE程序設(shè)計(jì)課程不再適合,它難以考查學(xué)生對(duì)知識(shí)的實(shí)踐運(yùn)用能力,無(wú)法對(duì)學(xué)生的綜合能力給出客觀公正的評(píng)價(jià)。該課程考核應(yīng)將課后作業(yè)、上機(jī)實(shí)驗(yàn)、課程設(shè)計(jì)、期末考試等進(jìn)行綜合評(píng)價(jià),淡化期末卷面考試所占的分量。比如:平時(shí)出勤和課堂互動(dòng)占20%;同步實(shí)驗(yàn)占20%,包括案例的調(diào)試,小型項(xiàng)目的構(gòu)建等;課程設(shè)計(jì)結(jié)果及提交報(bào)告占20%,要求獨(dú)立或以團(tuán)隊(duì)方式完成中小型系統(tǒng)的分析、設(shè)計(jì)、核心功能的實(shí)現(xiàn);期末考試占40%。課程考核貫穿整個(gè)學(xué)期,考核成績(jī)充分體現(xiàn)全面性和公平性,并能為學(xué)生未來(lái)的工作單位擇人提供較科學(xué)的依據(jù)。
3 結(jié)束語(yǔ)
JavaEE程序設(shè)計(jì)課程是計(jì)算機(jī)學(xué)院軟件工程方向極為重要的一門(mén)專業(yè)課程,旨在讓學(xué)生掌握進(jìn)行企業(yè)級(jí)軟件開(kāi)發(fā)的高級(jí)專業(yè)技能,畢業(yè)后能快速適應(yīng)相關(guān)方面的工作。課程的特點(diǎn)和社會(huì)人才需求決定了該課程的教學(xué)改革是一個(gè)長(zhǎng)期的過(guò)程。面對(duì)社會(huì)的新形勢(shì)、新需求,教師必須不斷更新思路、拓展知識(shí),不斷探索切實(shí)可行的教學(xué)改革方案,從而保證實(shí)踐型課程的教學(xué)質(zhì)量。同時(shí),加強(qiáng)培養(yǎng)學(xué)生的主動(dòng)性創(chuàng)新意識(shí),全面提高學(xué)生的動(dòng)手能力、應(yīng)變能力和綜合素質(zhì),從而培養(yǎng)出能適應(yīng)社會(huì)飛速發(fā)展的IT綜合型技術(shù)人才。
基金項(xiàng)目:四川理工學(xué)院教改項(xiàng)目(No.JG-1336);四川理工學(xué)院專業(yè)改革基金(No.ZG-1202)
參考文獻(xiàn)
[1] 教育部,財(cái)政部.關(guān)于實(shí)施高等學(xué)校本科教學(xué)質(zhì)量與教學(xué)改革工程的意見(jiàn).教高[2007]1號(hào),2007.
[2] 陶以政,吳志杰,唐定勇,席傳裕,等.基于J2EE的應(yīng)用框架技術(shù)研究[J].計(jì)算機(jī)工程與設(shè)計(jì),2007.28(4):826-828.
[3] 趙春生.基于MVC的Struts框架初探[J].科技創(chuàng)新導(dǎo)報(bào),2008(26):218-219.
[4] 謝怡寧,羅智勇,王莉莉.J2EE課程教學(xué)改革的探索與實(shí)踐[J].江蘇教育學(xué)院學(xué)報(bào),2010.26(02):46-49.
[5] 趙彥.《輕量級(jí)JavaEE開(kāi)發(fā)》課程教學(xué)改革的研究[J].寧波職業(yè)技術(shù)學(xué)院學(xué)報(bào),2011.15(5):95-100.