任東,馬凱,李碧濤
摘要:在Java課程群教學過程中引入雙語教學可以培養學生自覺學習新技術的意識,提升學生獨立應用新技術的能力。本文從教材選取、內容組織、教學工具、課程考核等方面入手設計雙語教學模式,通過一系列的教學實踐活動,學生的自學能力得到很大提高,取得了較好的效果。
關鍵詞:Java;雙語教學;自學能力
中圖分類號:G642.0 文獻標志碼:A 文章編號:1674-9324(2014)08-0109-03
根據TIOBE編程語言排行榜,Java語言長期和C、Objective-C一起長期居于前三甲[1],Java類課程也是很多高校計算機科學與技術專業的專業核心課程,由于技術體系龐大,往往以課程群的方式開設,通常包括Java程序設計、Java高級應用開發、Java Web程序設計、Java EE架構與設計、基于Android的移動應用開發等多門課程,具有知識點多、更新快的特點。而官方發布的最新參考資料往往是英文的,像API參考文檔,各種tutorial開發指南等,學生習慣參考的電子版中文資料往往要滯后1~2年,對應的中文教材出版往往更延后,由于英文水平參差不齊,學生對于英文資料往往有畏難情緒,在Java課程群引入雙語教學很有必要,教師在教學和考核時加大引導,這樣才能培養學生主動更新知識體系的意識,提升獨立運用新技術的能力。
一、Java雙語教學的必要性
Java技術體系比較寬泛,同時由于是開源的原因,國內外各個開源組織尤其是國外的開源組織不斷推出新版本的基于該技術的框架與編程組件,這就對技術使用者不斷更新知識體系,學習新技術,應用新技術。學校開展Java課程群教學,有兩點局限:一方面是課堂時間有限,能夠講授的內容也有限;另一方面是目前廣泛選用的很多教材內容往往滯后于Java技術的發展。學生為了適應以后從事開發工作的需要,就需要具備較強的自學能力;在學習新技術的過程中最新的參考資料往往是英文的,這就要求學生具備查閱英文技術文檔的能力;另外在技術問題的探討方面,往往需要與國外的同行交流,也需要學生具備一定的外語水平,所以在Java類課程中開展雙語教學很有必要,雙語教學的開展對教師也提出了一定的要求,有的高校直接聘請了外籍教師,開展全英語Java教學工作[2],但由于教學投入、學生基礎等原因,并不適用于所有的高校。
二、雙語教學模式
Java雙語教學模式通常有三種模式可選[3],第一種是使用全英文的沉浸式;第二種是剛開始階段用母語,然后逐漸引入英語教學,母語至始至終保持使用,英語是部分使用,稱為保持式;第三種是過渡式,剛開始使用母語,到后期全部使用英語授課。通過教學實踐我們發現第二種雙語教學模式更適合我校當前的教學現狀,即教學材料及開發工具采用全英文,講解時中英文混合,中文為主。
1.教材選取。好的教材不僅易于理解,還可以加深對專業知識的認知,節省閱讀時間,減少學生對全英語教學的恐懼感,同樣也能節省教師的備課時間[4],在選取Java教材時建議采取以下策略。(1)盡量選取經典的英文教材,難度要適中,最好有對應的中文譯本,如Daniel Liang編寫的Introduction to Java Programming[5],這樣學生學習起來就更方便,在閱讀時如果能夠對照進行,效率將會大大提高[6],對于課業繁重的學生來講更有幫助。(2)盡量選取有Java官方文檔背景的教材,最新的API和指南都是Java官方第一時間發布的,各類參考書和教學資料都是以其為權威的標準。(3)要選用技術體系結構全面,持續更新的教材,有的教材不斷推出新版本,很有延續性,如昊斯特曼等編著的《Java核心技術卷I基礎知識》和《Java核心技術卷II高級特性》目前已經推出第9版[7,8],有很強的生命力和人氣,初學者可以只學習第I卷,高級特性適用于已有Java開發基礎的同學。(4)教材要配有豐富的例子程序,國內目前的Java教材通常為幾人合編,書中配套的例子程序風格多樣,不成體系,有的例子過于簡單,對實際開發工作指導性不強,而經典的教材往往有豐富的例子,并且例子程序稍加改變即可有一定的實用性。(5)教材要有配套的教學網站,這樣可以方便讀者獲取更新信息和教學資料,另外也可與編者互動交流,目前一些經典的英文原版教材基本上都有用于交流的網站。
2.教學內容組織。Java類課程設計技術內容比較多,通常分為幾門課程講授,但總體可以分為三類即Java SE技術、Java EE技術、Java移動客戶端開發技術,在教學內容組織方面可以參考Java官方指南文檔中建議的學習路線[9],以及經典教材中編排的內容,此處只列出知識點。①Java SE、Java基礎知識部分,包括Java開發環境配置;Java語言基礎——類、對象、繼承、數據類型、泛型、打包等基本的概念;常用的Java類——異常處理、基本I/O、多線程、正則表達式、平臺環境;Java高級特性部分,包括集合框架、國際化、反射機制、安全機制、JavaBeans、擴展機制、Java泛型編程的高級特性;客戶端技術部分,包括Swing開發技術、Deployment技術、2D Graphics技術;Full-Screen Exclusive Mode API;服務器端技術部分包括JDBC訪問數據庫、JMX、JNDI、JAXP、RMI、Concurrency。②Java EE,在企業級開發技術中有兩條主線,一條是Java官方提供的技術路線,主要包含以下內容:在Web層主要包括JSF技術、Ajax技術、Java Servlet技術、web應用的國際化和本地化技術、Web Services。在模型層主要是Enterprise Beans技術、Java EE平臺的依賴注入技術。在數據層包括各類持久化技術,除Java自帶的JPA以外還有一些其他的開源框架,如Hibernate等。另一條是以Struts2+Spring+Hibernate的開源框架:Struts2負責Web層;Spring負責業務層管理,即Service,為Action提供統一的調用接口,封裝持久層的DAO,并集成Hibernate,Spring可對JavaBean和事物進行統一管理;Hibernate負責持久層,完成數據庫的CRUD操作。兩條技術路線可以單選一個,教學學時充足的話,也可以兩條兼顧。③移動客戶端應用開發技術,目前很多學校的教學內容采用的是基于Android平臺的應用開發,主要內容包括:Android應用程序結構;Activity和Intent;Android基本組件;Android數據存儲技術;Android Service技術。endprint
3.教學工具。雙語教學中需要使用一些輔助性的工具,這樣會提升學生學習的效率,下面從閱讀工具、開發工具、搜索引擎等幾個方面結合實際教學經驗提出一些建議。①閱讀工具選擇,在使用基于頁面的英文資料,典型的是在線的英文文檔,需要選用帶即時翻譯的瀏覽器,推薦選用Firefox或Chrome瀏覽器。對于閱讀非頁面的英文資料時,除了安裝必備的PDF閱讀器外,最好在機器上安裝一個比較好用的翻譯軟件,如金山詞霸等。②開發工具選擇,盡量選用英文環境的開發工具,如Eclipse等,可以在其官網上下載最新的免費版本,該軟件使用比較廣泛,幫助文檔比較齊全,對Java SE、Java EE和基于Android的應用開發支持都比較好,有各類實用的插件,配置也比較簡單,建議選擇,另外Java官方的Net Beans開發工具漢化較好,也有相應的英文版本,可以作為備選。
三、通過雙語教學提升自學能力
Java雙語教學采取主要強調培養學生的自學能力,自學能力體現在新知識的獲取和應用兩個方面,而同時自學又比較強調獨立性,即整個過程是學生自發獨立完成的。
1.獨立獲取新技術的能力。學生通過雙語教學的課堂熏陶,能夠養成追蹤、關注、獲取新技術的習慣,比如經常訪問一些開源組織的官網和常用的開發者論壇參與技術討論;研究新開發出來系統的開發新技術和實現原理等。并且要具備查閱、學習最新技術的英文文檔資料的能力,能夠按照文檔快速上手技術。
2.獨立應用新知識的能力。在開發過程中,會不斷遇到問題,特別是Java技術,很多同學在程序開發時面對拋出的大量異常,往往會有畏難情緒,大多數是程序本身的問題,但錯誤有時是由于所使用的開源框架本身的缺陷造成的,這就要求學生掌握熟練的Debug技能,在自己解決不了問題時,要能夠與國內外同行交流探討。
培養學生的自學能力是實施Java課程雙語教學的出發點和最終目的,通過授課教師在課堂與實驗課上的大力引導,并在考核環節增加對學生自學能力的考查,如給學生一段原版的英文資料,讓學生翻譯該段文檔,并要求學生在已有程序的基礎上利用新技術對其改造。剛開始學生可能會不適應,特別是英文水平較差的同學,但經歷一段時間的不適之后,自學能力都得到了明顯的提升。
參考文獻:
[1]http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html[DB/OL].
[2]魏莉,龔德良,趙純堅.計算機專業聘用外籍教師開展雙語教學的實踐研究[J].電腦知識與技術,2013,(09):4893-4894.
[3]張引瓊,戴小鵬.“Java程序設計”雙語教學模式的分析與實踐[J].當代教育理論與實踐,2011,(04):126-127.
[4]姚爭為.程序設計類課程的全英語教學研究[J].計算機教育.2013,(08):77-80.
[5]Liang D Y. Introduction to Java Programming[M]. 6版.北京:機械工業出版社,2009:1-580.
[6]劉維,陳崚.JAVA程序設計全英文教學實踐[J].計算機教育,2013,(12):81-85.
[7]Cay S.Horstmann,Gary Cornell.Core Java Volume I-Fundamentals[M].9版.北京:人民郵電出版社,2013:1-974.
[8]CayS.Horstmann,GaryCornell.CoreJava Volume II-Advanced Features[M].9版.北京:人民郵電出版社,2013:1-1118.
[9]http://docs.oracle.com/javase/tutorial/tutorialLearningPaths.html[DB/OL].
基金項目:湖北省教育廳高等學校省級教學研究項目(2012232);三峽大學教學研究項目(J2011062)。
作者簡介:任東(1976-),男,博士,副教授,研究方向為現代物聯網應用和遙感技術。endprint