何立富
摘要:《Java web應(yīng)用程序設(shè)計》是高職院校計算機軟件開發(fā)類專業(yè)的核心課程,知識點多,實踐性強。為了提高學生的動手實踐能力,在現(xiàn)有的教學條件下引入項目教學法處理好理論教學與實踐教學的關(guān)系,提高了教學效果。該文就項目教學法在本課程中的應(yīng)用和實施進行了深入的探討。
關(guān)鍵詞:Java web;項目教學;教學改革
中圖分類號:G424 文獻標識碼:A 文章編號:1009-3044(2015)33-0077-02
Application of Project Teaching Method in the Course of Web Java Application Design
HE Li-fu
Abstract: "Web Java Application Design" is a core course of computer software development in higher vocational colleges. It has many knowledge points and practical applications. In order to improve students' practical ability, the teaching method is introduced into the existing teaching conditions to deal with the relationship between theoretical teaching and practical teaching, improving the teaching effect. This paper discusses the application and implementation of the project teaching method in this course.
Key words: Web Java; project teaching; teaching reform
隨著互聯(lián)網(wǎng)技術(shù)的迅猛發(fā)展, Java Web開發(fā)技術(shù)已是目前Web 應(yīng)用程序開發(fā)的主流技術(shù),很多高職院校為了適應(yīng)人才市場需求變化,提高學生就業(yè)競爭力,計算機軟件開發(fā)類的專業(yè)都開設(shè)了Java Web應(yīng)用程序設(shè)計類課程。但與其他專業(yè)課程相比,本課程即是前期Java程序設(shè)計、數(shù)據(jù)庫等課程的一個綜合運用,也是后期綜合實訓(xùn)的基礎(chǔ),涉及的知識面較廣,且與實際開發(fā)結(jié)合緊密。因此,如何在現(xiàn)有的教學條件下處理好理論教學與實踐教學的關(guān)系,能讓學生學以致用,獲得最好的教學效果是在講授該課程時面臨的最大挑戰(zhàn),而項目教學法的應(yīng)用可以使教師擺脫這種困境。在項目中讓學生面臨問題,通過提出、分析、解決各種問題,既能調(diào)動學生的積極性,又能最大限度地挖掘他們的潛能[1],并能高效地實現(xiàn)預(yù)定的教學目標。
1 項目教學法與傳統(tǒng)教學法的區(qū)別
《Java Web應(yīng)用程序設(shè)計》課程知識面較廣、技術(shù)更新快,已是高職院校計算機軟件開發(fā)類專業(yè)的核心課程。但作為知識傳承載體的教材建設(shè)往往滯后,目前使用的大多數(shù)教材普遍理論性強而缺少實用性,脫離實際,且配套的實踐教材不足,即使課后有思考題,也是幫助學生鞏固學過的知識,缺乏實踐訓(xùn)練。而由于大多數(shù)教師沒有Web應(yīng)用程序開發(fā)的實踐經(jīng)驗,對教學內(nèi)容的取舍和內(nèi)容的先后順序安排難以把握。在課堂教學上還是采用傳統(tǒng)的“以知識為中心”的章節(jié)組織教學內(nèi)容,還是采用多媒體演示講解和機房實驗相結(jié)合的教學模式,這種模式主要存在以下缺點是:1)對知識應(yīng)用缺乏整體感。學生在學習過程中過分注重知識點的學習,而各知識點在實際軟件項目開發(fā)中的用處不清楚,也沒把各知識點聯(lián)系起來形成一個整體,教學形式單一,易讓學生產(chǎn)生厭倦情緒。2)缺乏實際工程項目開發(fā)體驗。雖然大多數(shù)教學環(huán)節(jié)也有實例, 但通常是學生課前完成教師布置的編程題,上機課時操作驗證,或是對上課案例或習題輸入計算機進行驗證,不需要思考如何修改程序,對于稍微復(fù)雜一點的程序就束手無策。在開發(fā)過程中不能有效地運用開發(fā)工具和參考文檔幫助設(shè)計與開發(fā),也不能運用軟件工程方法對開發(fā)過程進行指導(dǎo),造成了教學內(nèi)容與社會需求相脫節(jié)[2]。
項目教學法是在老師的指導(dǎo)下,學生通過該項目的進行,了解并把握整個過程及每一個環(huán)節(jié)中的基本要求[3],注重理論與實踐相結(jié)合,是指借助項目來完成教學目標的活動。在本課程中使用項目教學法,是按照軟件工程的思想將一個工程項目貫穿于整個教學過程中,把這個工程項目分解成對應(yīng)各章節(jié)內(nèi)容的一個個小型項目,再把小型項目分解成具體的任務(wù),充分調(diào)動學生的學習積極性,在真實或模擬的職業(yè)情景中,通過小組合作完成各任務(wù),掌握各知識點的實際應(yīng)用方法,將以教師為中心向?qū)W生為中心轉(zhuǎn)變,將以課本為中心向項目任務(wù)中心轉(zhuǎn)變[4]。同時,改變了傳統(tǒng)的教學組織形式,將課堂搬進機房,實現(xiàn)理論教學和實踐教學相統(tǒng)一,將課堂為中心向?qū)嶋H經(jīng)驗為中心轉(zhuǎn)變,將教學目標以知識傳授向職業(yè)能力為本轉(zhuǎn)變。這是既是對傳統(tǒng)教學方式的一種較大改革,也是對教師專業(yè)能力發(fā)展的一個促進。
2 項目教學法具體實施過程
項目的選擇是項目教學法成功與否的關(guān)鍵。項目既要能全面概括所學習的知識點,難易程度又要符合學生的專業(yè)要求和基礎(chǔ)知識掌握程度,同時也要考慮是否有實際意義,能否引起學生的學習興趣,能否達到預(yù)期的目標。
2.1 確定開發(fā)項目
本課程教學目標是要求學生了解、掌握Java Web應(yīng)用及開發(fā)的基本思想,能用它編制面向?qū)ο蠛途W(wǎng)絡(luò)化的程序。教學中需完成JSP、Java Bean、Servlet及MVC設(shè)計模式,Struts、Hibernate和Spring主流開發(fā)框架、Ajax、EL表達式等內(nèi)容。根據(jù)項目教學法的要求,需要選擇一個完整的項目包含該課程上述所有的內(nèi)容,并能分解成多個小項目,能按照循序漸進的教學規(guī)律安排組織教學。經(jīng)過教學實踐,“新聞管理系統(tǒng)”項目是該課程比較合適的綜合性項目,既能覆蓋課程所有技術(shù),也符合易分解成小項目和具有較強實際應(yīng)用價值等項目教學法的相關(guān)條件。
2.2 項目的分解
項目選定后,對系統(tǒng)進行分析,其主要功能是新聞顯示和新聞的管理,根據(jù)課程內(nèi)容特點,可將本系統(tǒng)分為四個階段來完成:第一階段使用jsp + jdbc 實現(xiàn);第二階段使用MVC + DAO實現(xiàn); 第三階段使用Struts + DAO實現(xiàn); 第四階段使用Struts + Hibernate+ Spring實現(xiàn)[5]。同時根據(jù)系統(tǒng)的開發(fā)過程,可把本系統(tǒng)分解為具體的6個任務(wù)。
1)新聞系統(tǒng)的動態(tài)原型
在前期《網(wǎng)頁設(shè)計》課程,學生已完成了靜態(tài)網(wǎng)頁的制作,本次任務(wù)主要將靜態(tài)頁面轉(zhuǎn)換為jsp頁面,通過本任務(wù)的實施,讓學生掌握JSP的開發(fā)和運行環(huán)境、JSP指令、內(nèi)置對象、EL表達式等知識點,該任務(wù)完成后新聞管理系統(tǒng)的基本框架也已實現(xiàn)。
2)新聞系統(tǒng)的動態(tài)顯示
為進一步完善系統(tǒng)的功能,在完成動態(tài)頁面設(shè)計后,可結(jié)合前期完成的《數(shù)據(jù)庫》課程案例,將新聞內(nèi)容動態(tài)顯示,即能從數(shù)據(jù)庫中調(diào)取新聞標題,能從數(shù)據(jù)庫中查看新聞的具體內(nèi)容,本次任務(wù)完成后將系統(tǒng)前臺顯示頁面的基本功能得到實現(xiàn)。
3)新聞的動態(tài)管理
動態(tài)管理,即是對新聞內(nèi)容能進行添加、刪除、修改等操作,可先使用JSP頁面完成,再引入JavaBean和Servlet,并使用MVC設(shè)計模式對系統(tǒng)架構(gòu)進行修改。讓學生熟悉MVC模式的工作原理,重點掌握JavaBean和Servlet程序的編寫和配置方法,并對兩種模式進行比較,實現(xiàn)新聞管理系統(tǒng)的基本功能。
4)struts框架的應(yīng)用
Struts是Apache軟件組織的一項開源項目,它把Servlet、JSP以及標簽元素整合到一個統(tǒng)一的框架中,利用Struts框架進行開發(fā),程序員沒有必要自己編寫全套的MVC框架代碼,從而大大縮短了開發(fā)周期,對系統(tǒng)進行使用Struts框架改造,比較和普通MVC的區(qū)別,重點掌握Struts體系結(jié)構(gòu)、工作流程。
5)SSH框架的應(yīng)用
SSH 為 struts+spring+hibernate的一個集成框架,是目前較流行的一種Web應(yīng)用程序開源框架[6]。在本任務(wù)中,主要了解SSH框架的工作原理,能使用SSH框架對系統(tǒng)進行升級,能熟練地對各框架進行配置和整合。
2.3 項目的具體實施
有好的項目設(shè)計還要有好的教學策略,在項目教學法實施的過程中,要創(chuàng)設(shè)相應(yīng)的教學情景,為學生營造一種真實的工作環(huán)境氛圍。教師是項目的指導(dǎo)者,讓學生積極參與操作,變被動學習為主動學習,形成自己對知識和技能的理解,提高專業(yè)技能。在項目的具體實施過程中,關(guān)鍵要注意以下幾個環(huán)節(jié)的設(shè)計。
1)團隊劃分
項目教學法是緊緊圍繞規(guī)定的項目內(nèi)容,讓學生積極參與并完成項目任務(wù),培養(yǎng)學生自主學習、創(chuàng)新的能力。因高職院校學生基礎(chǔ)差,獨立完成一個小型項目會有一定的困難,可讓他們相互合作完成項目任務(wù)。在教學過程中,可以根據(jù)學生的能力水平、處事能力等因素相互搭配分成多個項目組,每組成員在4人左右,并由一名組長負責組內(nèi)的分工和協(xié)調(diào)。在學習過程中互相幫扶,這既調(diào)動了學生的主觀能動性,也鍛煉了學生的團隊協(xié)作能力。
2)教師講解與示范
在基于項目開發(fā)的教學模式實施之前,教師應(yīng)對設(shè)計項目內(nèi)容、要求、時間要求、工具、開發(fā)方法及評價方法等先做好準備工作。在項目完成過程中,教師先講解需求,分析可行的思路和實現(xiàn)方法,將項目轉(zhuǎn)化為具體的任務(wù)。遵循任務(wù)安排,將書本知識進行重新組織,根據(jù)任務(wù)的密切程度,有選擇性的講解。對項目的演示,教師應(yīng)在課堂上當場編寫程序,演示分析、排錯、推導(dǎo)和調(diào)試,要讓學生參與項目的分析和設(shè)計。并給學生提供必備的素材,讓他們在規(guī)定的時間內(nèi)進行練習,掌握項目設(shè)計每步的要求和技能,培養(yǎng)他們分析和解決實際問題的思想和方法。
3)過程指導(dǎo)
在項目的進行過程中,教師的角色發(fā)生改變,從理論講解變?yōu)檩o助指導(dǎo)。先由學生模仿項目源代碼去實現(xiàn)項目,在此過程中學生會遇到一些困難,但不能一遇到問題就幫助解決,教師要充當好這個指導(dǎo)者的角色,要鼓勵學生盡量依靠自身的能力和團隊的協(xié)作去解決問題。當然,教師也不是全不管,只有團隊無法完成或出現(xiàn)偏差時,才會進行對應(yīng)的指導(dǎo)。同時,可建立QQ群在項目組之間進行技術(shù)和經(jīng)驗交流,促進程序調(diào)試和分析問題能力的提高。
4)成果展示,項目評價
項目評價始課程考核是檢驗教學效果的重要手段,也是教學管理中最重要環(huán)節(jié),有利于促進學生的學習和發(fā)展,也有利于教師改進教學。作為實踐性非常強的課程,項目評價要涵蓋項目教學活動的全過程[7]。要建立一套如小組評價、答辯等多元化的評價體系,這既有利于能及時發(fā)現(xiàn)各組問題所在,也有利于能反映學生在項目活動中能力的發(fā)展過程。同時,也要進行階段性的項目成果展示,這既是引導(dǎo)學生相互學習,取長補短,也讓學生充分體會到成功的喜悅,增加學習的信心。
3 結(jié)束語
項目教學法充分調(diào)動了學生的積極性,提高了學生的實踐動手能力,體現(xiàn)了職業(yè)教育的特點,縮短了學校教育與企業(yè)要求之間的距離。也是新教學模式的一種探索,是對傳統(tǒng)教學模式的一個突破,在該課程中的成功應(yīng)用,課堂的教學質(zhì)量也得 到了大幅度的提高。雖取得了一定的成效,也面臨一些挑戰(zhàn)。如要求教師不僅要具有一定的理論水平,還要具備豐富的開發(fā)經(jīng)驗,能應(yīng)對學生的各種未知問題,教學過程中要創(chuàng)設(shè)有真實工作氛圍的實驗環(huán)境,課程之間的銜接等都是項目教學法能否成功實施的關(guān)鍵因素。這些都需我們在今后的教學實踐中繼續(xù)探索, 不斷提高教學質(zhì)量。
參考文獻:
[1] 邢靜宇,于彬.項目教學法在《Java web 開發(fā)》課程中的運用[J].電腦知識與技術(shù), 2013 (8).
[2] 王倩倩,段震.基于項目驅(qū)動的Java實踐教學[J].合肥學院學報, 2010 (2).
[3] 嚴仲興.軟件外包人才培養(yǎng)方案的設(shè)計與研究[J].信息與電腦,2011(7).
[4] 張忠福.淺談運用項目教學法培養(yǎng)學生的能力[J].黑龍江教育:高教研究與評估,2011(5).
[5] 李興華.Java Web 開發(fā)實戰(zhàn)經(jīng)典[M].北京:清華大學出版社,2010.
[6] 張瑋駿. 基于SSH的門戶網(wǎng)站系統(tǒng)的設(shè)計與開發(fā)[J].電子技術(shù)與軟件工程,2013(3).
[7] 張海玉,王建虹.項目教學在《JavaWeb開發(fā)》課程中的應(yīng)用[J].山西財政稅務(wù)專科學校學報,2010(12).