張洪軍
摘要:本文結合計算機軟件業人才的供需背景,分析了當前高職計算機軟件專業發展的現狀和困惑,并詳細介紹了我系在Java語言教學改革方面的具體思路、方法及所取得的成就。
關鍵詞:Java語言;教學改革;高等職業教育;軟件開發;分方向教學
中圖分類號:G642文獻標識碼:B文章編號:1672-5913(2009)04-0045-03
近年來,高等職業教育迅猛發展。如何提高學生的學習熱情和學習興趣,如何讓學生更快的適應工作崗位的需要,成為當前高職院校研究的關鍵問題。我系自2005年以來,結合在研的山東省教育廳項目“基于崗位群的高職計算機相關專業課程體系改革研究”,對全系學生進行了分方向教學改革,提高學生的學習興趣,重點培養學生分析問題、解決問題的能力,使學生養成主動學習的良好習慣。通過三年來的實踐和探索,現已取得良好的教學效果。
我系將全體學生從第四學期開始分為“計算機硬件”、“網絡工程”、“動漫設計”、“C語言”、“網站方向”、“Java語言”等六個方向。目前我系“Java語言”方向每個年級組建一個班,以計算機軟件技術專業和計算機應用技術專業的學生為主,其它專業的學生也可以選擇。該方向的培養目標為:通過理論和實踐教學,使學生掌握面向對象的程序設計及網絡編程,理解和掌握Java語言的基本語法和語義,運用面向對象編程的方法,學會使用JDK、JBuilder開發程序,養成良好的編程習慣,培養團隊合作精神。
1開設Java語言方向的背景
1.1Java技術人才的需求現狀
經過十多年的發展,Java語言及其平臺已成功應用在計算機網絡、移動通信及企業信息化管理(ERP/DRP/OA/Web)等各領域,Java的開放性、可移植性和安全性得到公認,受到全球開發人員的青睞,已日趨成為軟件開發的主流語言及平臺。
我國軟件工程師的需求每年以20%左右的速度遞增,這一數字在以后5年的增幅將會更大。在未來很長一段時期內合格軟件人才的需求將遠遠大于供給。據有關數據統計,2006年,我國軟件產業人才需求90萬,2007年軟件人才的缺口已達50.5萬人,其中Java軟件開發人才將非常缺乏。根據2006年文華學院與上海信息服務人才培訓中心聯合進行的一項調查統計,僅上海地區,各級水平的Java技術人才缺口就達到18-20萬,以此推斷,全國Java技術人才的缺口應該在60萬左右。在未來5年內,合格Java人才的需求將遠大于供給。
雖然Java人才的薪水較高,但目前對這類人才需求旺盛的IT企業卻很難招聘到合格的Java人員。每年全國高校畢業的計算機專業學生有數十萬之多,卻仍難以滿足軟件產業的直接需要。一方面IT企業招不到合格的Java開發人員,另一方面高校計算機專業畢業學生無法正常就業,在供求表面“平衡”的情況下,卻出現了實際供求不平衡的尷尬局面。
1.2需求現狀產生的原因
出現上述供求不平衡的最根本原因就是國內計算機專業畢業生在讀期間沒有掌握實用的技能與經驗,距離企業的實際用人需求有較大的差距。
當前,大學的學科教育仍然以基本概念和原理的教學為主。盡管高校已經意識到Java的就業前景,開設了各種關于Java的應用課程,但概念原理式的教學方式使得學生最多只能算是了解了Java的基本知識和基本技術。而軟件產業需要的是直接面對問題、解決問題的技能。Java軟件技術開發人員需要做到根據企業需求進行相應的開發,除了了解Java語言的基礎知識外,更重要的是要具有相應領域的開發能力,包括圖形界面的開發、Web組件的開發、移動應用的開發以及Web服務的開發等。一個Java程序員至少要具備以上四項能力中的一項,才可能滿足企業對人才的需求。
事實上,大學生走出校門進入軟件企業后需要經過較長時間訓練和再學習才能成為成熟的軟件人才,這無法滿足中小企業招人就用的實際需求。
2Java語言方向教學改革方法
圍繞著公共基礎課、專業素質課和專業技能課三個模塊,我系組織各教研室對Java語言方向所有課程的教學大綱進行修訂,依據是近年高職高專課程的相關文件和標準,同時兼顧我校軟硬件資源。修訂后的大綱分為語言方向理論課教學大綱和實驗、實訓大綱:
(1)鼓勵學生分方向前開闊視野
我系前三學期為計算機專業普及教育,并在學習中引導學生的興趣,明確專業的細分方向。對程序設計有興趣的同學,由老師有選擇地推薦課余閱讀《Java 2編程詳解》、《Java 2從入門到精通》,更深的如《Thinking in Java》、《Java2核心技術卷一,二》、《Java2圖形設計卷1:AWT卷2:Swing-Graphic Java 1.4》等。這些書籍對學生入門有很大的好處。從第四學期開始,進行分方向教學,這樣部分同學就能帶著問題上課,掌握知識更快,代碼寫作更深入。
(2)培訓式集中授課模式
大部分高職院校計算機專業還是實行學期周期模式,即一門課程在一個學期講授完畢,這種方式課時分散,學生不容易掌握實踐性強的知識內容。本方案對“Java方向”專業課采用培訓式授課模式,即第四和第五學期的各專業課在八周內集中授課和實訓,最后一周進行考核。這些專業課包括基礎JAVA程序設計、軟件工程、軟件項目管理、Java集成開發環境、JSP與Servlet開發、高級Java程序設計、SQL Server等。
(3)研討式的教學方法
教師上課時,要善于設疑,精講多思,引導各層次的學生積極思考,各抒己見,互相討論和評價。上機實踐時也要設定各層次的操作要點和方法。教學設計有層次感,唯有如此才能充分調動不同層次學生的思維積極性,使他們都有所思,有所悟,有所得,避免出現低層次學生上課無所事事的現象。上機練習分組進行,以小組為單位進行大作業沒計,培養協作能力。
(4)加強實踐環節,大作業為主
為保證實踐教學的質量,我們在總體教學計劃中專門制訂了單獨的實訓計劃,使得Java語言幾門專業課的實訓時間達到總課時的一半以上,有的課程如高級Java設計能達到總課時的三分之二。上課后教師按照教案的內容,布置對口的大作業,做到即學即練。對學生實驗和動手能力的培養,并不是狹隘的局限于對程序設計語言的掌握、編程能力的提高以及會應用當前流行的各類硬件和軟件工具上,重要的是培養學生具有自主學習新技術、動手研究新產品的勇氣和能力。
讓學生在實例練習中加深對編程技術的掌握。比如筆者在講授Java中的Applet程序設計相關知識時就采用了貪吃蛇游戲的設計實例,每次課結束就布置好下次課要講的內容及讓學生上機實戰的作業。該例子使用規定的控件完成輸入輸出操作和展示界面效果,覆蓋了教學大綱要求
的知識點,同時該任務有較強的趣味性,能夠激發學生的學習熱情。實踐證明,采用這個實例能使學生對Applet開發掌握得更好。
(5)引入互動式教學
設計JAVA語言互動式學習,即“建-仿-讀-改-寫”的教學模式。使得學生先建立起編程的思維,然后仿照已有的成功案例進行開發,編譯和調試程序;根據程序的運行結果,仔細閱讀程序,理解功能的具體實現方法;在已有的成功案例的基礎上,改寫程序,實現自己的功能;最終寫出自己的程序。學生通過這一輪學習,可以有效地培養自己的編程思維、動手能力、自學能力和解決實際開發問題的能力。
(6)專業見習
一種方式是利用半年時間介紹學生到軟件公司去實習,實戰體驗Java編程的樂趣,和公司職工一起做項目,邊開發邊學習。另一種方式就是教師有意識、有目的、有針對性的讓學生參與教師的科研課題中,由教師擔任系統分析員或高級程序員的角色,學生去充當“軟件藍領”模擬或參與軟件開發,使學生在應用中,強化編碼能力或編碼意識,同時也可以培養學生良好的團隊合作精神。
(7)考核方式多元化
在考核方式選擇上,應向多樣化發展,著重考核“考不出”的能力。如:合作能力、創造能力、方法能力、組織管理能力、獲取信息能力、口頭表達能力、社會活動能力等。我們認為應該充分發揮教師的積極性和創造性,使其在教學改革和實踐中探索各種不同方式的考核方式。如一般考核成績包含期末考試、實驗考核、平常作業、實驗報告、考勤等等,而且實驗考核占總比40%左右。
對于某些實踐性特別強的課程,比如高級Java設計課程,我們要求學生在最后2周內上交一個自己做的完整項目,能完成相應的功能。如有的學生做出學生管理系統、電子商務網站等。
(8)重視畢業設計
畢業設計是檢驗學生學習成果的重要形式,安排在所有專業課結束前進行。我系針對畢業設計提出了“認真選題,強化指導,嚴把答辯關”的管理思路。
認真選題。每年的畢業設計題目均來自于教師出題和學生自選。系組織學術委員會對所有題目都要進行認真的篩選,對于題目過大、工作量偏少或題目與本方向聯系不緊密的題目予以更換。
強化指導。整個設計過程采用指導教師負責制,教研室主任負責不定期檢查,系畢業設計領導小組中期檢查。達不到要求的學生不允許參加答辯。
嚴把答辯關。為保證畢業設計質量,除指導教師和評閱教師把好關外,還要讓各答辯小組認真組織演示,未通過演示學生不允許參加答辯。答辯中實行優秀項目答辯模式,對評選出的優秀畢業設計進行獎勵,以培養學生的競爭意識。
3課改的實施效果與推廣價值
3.1實施效果
我系從2005級開始,“Java語言”方向已經有一屆學生畢業,教學成效顯著。學生學習積極性及就業率明顯提高。優勢主要表現在以下幾個方面:
(1)充分發揮了高等職業教育的辦學優勢
由于“Java方向”針對性強,課程設置比較合理,理論教學與實踐教學接近1:1.2,培養出來的學生既有一定的理論基礎,又有很強的實際動手能力,且具有很強的崗位針對性,因此,學生一畢業立刻可以上崗工作,深受用人單位的歡迎,2008年首批分方向培養試點的學生,一次就業率高達92%,而且經過不斷積累經驗,加大與社會的結合,分方向培養將會一屆比一屆效果好,就業也一屆比一屆好,充分體現分方向培養的優勢。
(2)充分發揮學生學習的主動性
分方向以后,“Java方向”的絕大部分同學都是根據自己的愛好選擇方向,而且學習目的非常明確,學習勁頭也很足,變被動學習為主動學習,很多同學根據各個方向的特點,制定自己的學習計劃,充分利用課余時間進行行業調查、社會實踐、軟件開發等,模擬開發了許多比較完整的軟件,進行了一系列市場銷售訓練等。以前學生宿舍可以說是“游戲機房”與“牌棋俱樂部”,現在則變成了“軟件開發室”。
3.2推廣價值
本項目的成果對我學院的其他專業,以及我省其他高校,乃至我國高職計算機教育都具有很好的參考價值。
4需進一步研究的問題
高等職業教育是面向行業、面向社會辦學,必須以行業背景作為依托,根據崗位群的能力要求制訂培養方案,同時必須考慮到學生的現在與將來。分方向培養既兼顧了基礎知識,又突出專業的針對性,既考慮到教學計劃的統一性,又考慮到學生的自主權。因此,基于崗位群的分方向培養是目前高等職業教育一種比較好的培養模式,希望這一培養模式能夠使我國的高等職業教育注入新的活力。經過一段時間的改革,我們也感覺有好多需要深入的地方:
(1)強化項目化教學,體現學生的主體地位
在Java語言專業課項目化教學中,要多與公司合作,尋找實際案例,少講精講,用項目來拉動教學的教學策略。而類似的例子可以放手讓學生自己去做。引導學生去自學相關的知識點,扭轉學生被動參與學習的局面,使學生逐步完成由“要我學”向“我要學”的轉變。充分體現學生在學習過程中的主體地位。
(2)提高師資隊伍水平
實施分方向教學,師資是關鍵。參與的教師必須要有較高的項目開發能力,同時要有豐富的組織教學的經驗和能力。我們正在進行師資培訓,逐步提高教師自身的水平。