摘要:面向對象程序設計語言Java是1995年5月由Sun公司發布的革命性語言,經過十多年的發展成為Internet時代最偉大的程序設計語言。目前許多高校計算機科學與技術專業都將Java語言作為“面向對象程序設計”課程的主要內容,并以Java語言為核心形成了Java課程群。在多年“面向對象程序設計”課程教學經驗的基礎上,就該課程教材和參考書的選擇、開發環境的選取、教學內容的篩選、教學方法的運用、教學案例的安排及與后續相關課程的銜接等進行了深入探討。
關鍵詞:面向對象;程序設計;Java;教學方法
作者簡介:馮中毅(1971-),男,甘肅白銀人,蘭州城市學院信息工程學院,副教授;董海棠(1973-),女,甘肅隴西人,蘭州交通大學機電工程學院,副教授。(甘肅 蘭州 730070)
中圖分類號:G642.0 文獻標識碼:A 文章編號:1007-0079(2013)25-0107-02
面向對象是一種對現實世界進行抽象的方法,是程序設計技術發展到一定階段的產物。通過面向對象的方法,將現實世界中的事物和關系抽象成對象、類、繼承、消息等,在進行軟件開發時,實現對現實世界的抽象與建模。面向對象的方法以利于理解的方式對復雜系統進行分析、設計和編程。同時,面向對象也能有效提高編程的效率,通過封裝技術,消息機制可以像搭積木一樣快速開發出一個全新的系統。面向對象主要涉及面向對象的分析、面向對象的設計和面向對象的實現。“面向對象程序設計”課程除了講授面向對象的概念、方法之外,更重要的是要選擇一種充分體現了面向對象概念及方法的程序設計語言。該程序設計語言可以讓學生學習面向對象分析、設計和編碼技術,并為學生今后的職業發展打下堅實的基礎。
Java語言就是一個很好的選擇,它具有跨平臺、純粹的面向對象、適合于單機和網絡編程等諸多優點。在桌面系統(Java SE)、企業分布式計算(Java EE)以及嵌入式設備(Java ME)的開發和應用上,Java語言都提供了簡單且高效的解決方案,且Java語言的使用基于免費的開源代碼。
在講授“面向對象程序設計”課程的過程中,以Java語言作為主要教學內容,經過長期的教學積累,針對該課程教與學中存在的一些問題有了一些經驗和解決方案。包括教材和參考書的選用、面向對象概念的講授、Java語言教學的安排、開發環境的選取、教學和實驗內容的篩選等方面,在文中給出了一些行之有效的方法。
一、“面向對象程序設計”課程的教學準備
1.教材和參考書的選用
選用的教材是否合適,與學生的學習效果密切相關。對于學生來說,首先教材要難度適中,否則在學習過程中會產生畏難情緒,甚至過高估計學習的難度以至于放棄這門課程的學習。其次,教材內容要及時更新并有較好的覆蓋面,以避免與當前的主流編程實踐脫節。最后,教材應該配有實驗指導書,以作為上機實驗時的材料。根據蘭州城市學院信息工程學院(以下簡稱“我院”)學生的具體情況,選用的教材是《Java2實用教程(第四版)》和該書配套的實驗指導書。除教材之外還應給學生推薦一些參考書,以加深和拓寬教學內容,開闊學生在專業學習上的視野。
由于面向對象及Java語言與網絡的密切關系,給學生推薦的參考書有《Java程序設計之網絡編程》。該書的內容將重點放在了兩個方面,一個重點是Java面向對象基礎編程,另一個重點是網絡編程,包括網絡通信技術、Servlet和JSP技術、Java EE流行框架,有助于學生對其主要技術的了解,有利于后續課程的學習。《Java編程思想(中文版)》選擇國外經典教材作為學生學習的參考書,學生在閱讀中文版參考書的同時,可以再找來英文原版教材對照閱讀,能使學生加強對所學知識的理解,也使學生了解到這一課程在國外的教學內容。
2.教學安排
“面向對象程序設計”課程在大三第一學期開設,學生在此前已學習過C/C++高級語言程序設計、計算機組成原理、數據結構、數據庫原理及應用、計算機網絡等課程,已具備比較全面的專業基礎知識,所以該課程的教學設計重點放在面向對象技術、Java語言基礎、JDBC編程、Java網絡編程。此外Java語言的基本語法類似于C語言,其面向對象的特征類似于C++語言。鑒于此,“面向對象程序設計”課程理論課時數為36學時,上機實踐學時數為36學時,根據多年的教學實踐,這樣的安排是比較合理的。
3.開發環境的選取
Java編程在初學時通常選用Java SE提供的Java軟件開發工具箱:JDK(Java Development Kit),是命令行的編程環境,需要用其他的純文本編輯器來建立Java源程序。使用Windows自帶的記事本來編輯源程序,每次都需要打開cmd窗口輸入許多命令,如編譯命令、運行命令等。這種方式有助于學生對于Java程序的編輯、編譯和運行過程的理解,但缺點也是顯而易見的。從編輯到運行程序的過程非常繁瑣,源代碼中的錯誤不易發現,如果編寫的是Applet程序,還要另外編寫html文件。雖然目前也有許多很好的Java集成開發環境(Integrated Development Environment,IDE)可用,例如NetBeans、MyEclipse等,但這些系統界面復雜,運行緩慢,耗費內存,而且會屏蔽掉一些知識點,不利于Java語言的初學者。在Java語言學習的后期,可以再去熟悉和掌握一個流行的Java集成環境,如上面提到的集成開發環境。當前MyEclipse開發環境的使用者較多。
在教學中,教師使用了一種既簡單又方便Java初學者使用的Java程序編輯器JCreator。首先安裝JDK,然后安裝JCreator,安裝完畢后需要簡單的配置。方法如下:在菜單的Configure中選擇Options,出現Options對話框,選擇JDK Profiles,點New命令按鈕,選擇JDK的安裝目錄。按此方法配置后,還可適當優化JCreator的Java開發環境,使它更適于編輯、編譯、運行、調試Java程序。在講授到Java網絡編程的內容時,再介紹Eclipse和MyEclipse的安裝和使用。
二、教學內容和實驗內容的重組
根據“面向對象程序設計”課程的后續課程及學生未來職業的需求,在教學實踐中將課程內容劃分為五個模塊,分別為Java語言基礎、面向對象開發技術、Java核心類庫和集合框架、JDBC編程、Java網絡編程。主要知識點及學時分配如表1所示:
對于以上知識點的上機實踐教學,采用了任務驅動教學法,學生上機實踐的關鍵是要找到合適的任務來激發學生的學習興趣。任務要既能夠體現核心知識點,又能夠應用于實際中。所以選取有價值的實例作為學生的上機任務,就能使學生積極地參與到教與學的過程中。根據以上分析,在表2中列出了與表1五個模塊的各知識點相對應的上機任務。
三、“面向對象程序設計”課程的教學方法改革
教學中的兩條主線就是理論和實踐。在理論課的教學中要重視選取恰當的案例,通過對小型案例的講解分析,讓學生分層次地理解面向對象程序設計的理論知識和Java語言的內容。再通過讓學生獨立或在教師指導下完成與理論內容緊密聯系的上機任務,鞏固所學知識,提高實踐技能,加深對理論知識的理解。
五個教學模塊中的相應知識點與上機實踐任務是按照由易到難來安排的,在教學中是分階段按步驟地讓學生掌握面向對象程序設計的知識和技術。在理論課的教學中首先通過小的案例介紹理論知識,再通過上機課中的任務來鍛煉實踐技能。在這一過程中學生不僅能學到知識和技能,還能體驗面向對象程序設計技術的發展歷程,積累更多的開發經驗和職業素養。
在理論課和上機實踐課兩個教學情境中,樹立學生是學習主體的意識,讓學生全程主動參與教學過程。案例解析式的理論課教學情境,教師提出問題,學生能主動分析問題并提出解決方案,大大提高了學生的學習興趣。上機實踐課堂上,任務驅動式的教學情境充分調動了學生積極性,在教師的指導下或學生獨立完成任務都更能激發學生的學習成就感,幫助學生樹立起完成下一階段任務的信心,大大提高學生學習效率和課堂教學效果。
四、結束語
“面向對象程序設計”課程的教學過程中,必須要兼顧理論與實踐的教學,提高學生參與度。在教學內容的安排上要體現出由易到難,知識與技能并重的特點。教材和參考書的選擇不但要考慮教學內容的先進性,更要考慮學生的特點。文中的這些做法及安排經過實踐證明可以有效地提高教學效果,在后續的具有類似知識體系的課程中(如Java EE課程等)也可推廣。
參考文獻:
[1]耿祥義,張躍平.Java2實用教程[M].第四版.北京:清華大學出版社,2012.
[2]李芝興,楊瑞龍,朱慶生.Java程序設計之網絡編程[M].北京:清華大學出版社,2009.
[3]王勇,王忠群,謝曉東.面向軟件方向課程群的《面向對象程序設計》教學研究[J].長春大學學報,2012,(4):498-501.
(責任編輯:王意琴)