陳優良,徐昌榮,陳淑婷
(江西理工大學建筑與測繪工程學院,江西贛州341000)
GIS專業面向對象程序設計教學改革探討
陳優良,徐昌榮,陳淑婷
(江西理工大學建筑與測繪工程學院,江西贛州341000)
面向對象程序設計課程在GIS專業教學體系中具有十分重要的地位。針對該課程在教學和實踐中存在的問題,結合多年的教學經驗,從教學內容、教學方法、教學手段以及實踐教學等方面進行了改革探討,以期能更好地實現本課程的教學目標,提高教學效果。
GIS;面向對象程序設計;教學改革;實踐教學

地理信息系統(GIS)有時又稱為“地學信息系統”或“資源與環境信息系統”。它是在計算機硬、軟件系統支持下,對整個或部分地球表層(包括大氣層)空間中的有關地理分布數據進行采集、儲存、管理、運算、分析、顯示和描述的技術系統[1]。它主要涉及地理學、計算機科學、地圖制圖學、測量與遙感科學等專業領域,是以計算機為主要工具的工程技術性科學[2]。計算機類課程在地理信息系統專業教學中具有極其重要的地位[3],而其中面向對象程序設計作為 GIS專業的一門重要的專業基礎課,以其高效而又實用的特性--既可以進行過程化程序設計,又可進行面向對象的程序設計[4],因而在整個教學體系中占據十分重要的地位。本文根據筆者多年在GIS專業面向對象程序設計課程中的教學經驗和教學中發現的問題,從教學內容、教學方法、教學手段及教學實踐等幾個方面進行了探討,以期進一步提高面向對象程序設計課程的教學效果和教學質量。
GIS是一個新興邊緣學科,在我國出現時間不長,起步于80年代,到90年代初才開始得到發展,但本身發展也不是很成熟,且現實性很強[2,5]。作為GIS軟件開發的基礎語言,面向對象程序設計課程教學存在著一些問題。
1.1 教學內容比較陳舊
面向對象程序設計教學內容主要包括類型系統、控制臺輸入輸出、運算符與表達式、程序流控制、類、方法、屬性、數組與索引器、結構和枚舉、異常處理等。在講授過程中,教師把重心放在講授一些語法結構和語句規則上,再輔以一些例題上機加以演示說明,沒有講授如何從客觀事物中抽象出知識,忽略了知識點的應用,造成學生學了東西不知道如何使用,不會用面向對象的方法開發應用軟件[6]。學生在學習完這門課程之后,程序設計能力沒有顯著提高,有的學生連面向對象程序設計思想都沒有掌握。另外,在教學內容處理上,主要以教材為主,未補充教材外新的內容(尤其是沒有結合GIS軟件開發的內容)。
1.2 教學方法單一
目前,面向對象程序設計教學主要是采用常規的順序式、灌輸式的教學方法。它側重于對面向對象相關術語及概念的灌輸,不能很好地與面向對象編程的思想進行對比學習,是以概念理解和記憶為主要手段的繼承式學習,學生僅僅在很淺的層次上學習了一種編程的方法及一些簡單語法規范;課堂教學主要以教師講授為主,在教學過程中與學生之間的互動幾乎沒有,不能充分調動學生的學習積極性與主動性;片面強調教學進度與信息量等外在的東西,忽視對學生分析與解決問題能力的引導,學生抽象問題能力較差。
1.3 教學手段缺乏多樣性
目前,高等院校面向對象程序設計課程的授課大多采用PPT投影方式的多媒體教學方式,這種教學方式能促進學生的感性認識,同時也能加大教學信息量、保證教學進度。但是,在教學過程中常常“以課件為中心,教師充當播音員甚至放映員”,這種“照屏宣科”是現代版的“照本宣科”。由于教學課件已經準備好,教師在課程教學中基本上采用常規的順序式、灌輸式的教學方法,在教學過程中與學生之間難以形成互動,因而大大降低了學生學習的積極性和主動性。
1.4 實踐教學環節重視不夠
面向對象程序設計是一門實踐性很強的計算機課程,但目前的實踐課教學存在很多弊端。一是上機實驗的目的不明確,實驗的內容不清楚。沒有相應的實驗要求,只是把書上的例題或課后習題輸入計算機試一下,根本沒有真正理解程序設計的核心在于設計,更談不上掌握面向對象思想了。因此,雖然大多數學生通過教學已經知道了面向對象編程的優越性,但是在解答作業和解決實際問題時還是無從下手。二是大部分實驗仍然在采取封閉式的教學方法,實驗前由老師集中詳細講授實驗目的、原理和步驟,甚至操作示范,學生只能在規定的時間“依葫蘆畫瓢”,不需主動思維和創新,這種抱著走的模式限制了學生的創造性和主動性,老師對學生的作用是“授之以魚”。
2.1 教學內容改革
在教學內容上,我們一方面對教學內容加以精選,突出面向對象程序設計的關鍵技術和實用技術,包括類、對象、封裝、繼承、多態和接口,突出算法而不是語法,講授面向對象Windows的編程技巧,介紹面向對象的編程理論知識,注重培養學生從客觀事物中抽象出類的能力;另一方面根據GIS軟件開發的要求,結合面向對象技術引入GIS軟件開發的內容,例如編寫點類、線類、面類等;三是借助一些參考書目積極引入本課程的最新技術和成果(新概念、新技術、新方法),例如泛型、迭代器、匿名方法、Lambda表達式、查詢表達式等[7],將這些內容重新組合成三個模塊:基礎要求模塊、選學模塊、選修模塊,從而形成新的課程體系,深化面向對象的核心思想。通過這種教學內容的改革,使學生真正掌握面向對象程序設計的本質,使學生的思維模式逐步從面向過程的程序設計方式轉向面向對象的程序設計方式上來。
2.2 教學方法改革
教學方法的改革是活躍課堂氣氛,培養學生思維能力的重要手段。教育家皮亞杰認為:教學以學生為中心,利用情景、協作、會話等學習環境要素,使學生成為知識意義的主動建構者。教師是教學過程的組織者、指導者,而不是主動實施的知識灌輸者[8]。但這些理論如何貫徹到具體的教學活動中,又如何根據所授課程和授課內容的特點來組織教學,確定科學合理的教學方法,值得認真研究。在教學實踐中,根據知識內容和性質,選擇不同的方法,有以下幾種:
1)采用案例教學法,使學生在模仿中掌握對抽象概念的感觀認識。打破以教材為中心的傳統教學模式,以精選出的案例為中心帶動教學。面向對象程序設計是應用性很強的一門課程,它既有理論又有實踐,既講方法又講動手能力。在教學中打破課本原有以知識的邏輯結構體系為順序組織課堂教學的方式,改用從現場操作簡單的案例入手通過讓學生觀看、模仿,在實際操作中去探究和領悟這些概念并適時地加以歸納總結,讓學生在輕松愉快的氣氛中接受新知識。
2)采用啟發式教學法,加強學生思考能力和創新能力的培養。在授課中開展啟發式教學,加強學生思考能力和創新能力的培養,從重知識目標轉向重智能目標。當代美國心理學家奧蘇伯爾認為學生從事新的有意義的學習時必須有適于新知識的原有認知結構[9],學生的學習就是一個同化自身認知結構的過程。因此課堂教學中在講授新的知識時,宜采用啟發誘導的方法,回顧以前學習的相關內容,設置新的疑問,引導學生在解決問題的過程中自然而然、不知不覺地接受新的知識,吸收新的思想,降低學習的難度。
3)采用生動形象的比喻教學法,激發學生的學習興趣。以生動形象的比喻闡釋抽象的概念。教學語言是教師充分消化教材后,在課堂上向學生進行知識的口頭傳授,根據學生抽象思維弱于形象思維這一特點,教師應使用通俗易懂的語言,使抽象的概念形象化,幫助學生建立想象表象。面向對象程序設計語言中的許多概念對于初學者而言,顯得抽象而深奧。作為任課老師如果能在講課中適當地運用形象、生動的比喻,常常會使許多看似深奧的概念變得淺顯而易于理解。
4)采用問題討論教學法,活躍課堂氣氛,培養學生分析問題與解決問題的能力。教師在課堂上圍繞所講的內容或者結合當前的一些熱點,給同學們提出問題,讓同學們思考、討論,提出自己的觀點,發表不同的看法。建構主義學習理論認為,知識不是通過教師傳授得到的,而是學習者在一定的情境(即社會文化背景)下,借助他人(包括教師和學習伙伴)的幫助,利用必要的學習資料,通過意義建構方式獲得的[8]。為此,在理論教學過程中可以采取問題討論的教學方法,在教學中根據教學目標精心設計問題,提出“任務”,針對所提出的問題,分析解決問題的思想和方法,啟發學生完成任務的求解思路和方法,調動學生學習的積極性。
2.3 教學手段改革
在面向對象程序設計課程的教學中,注重板書、多媒體教學與網絡化教學的有機結合。單純的“黑板+粉筆”的教學模式顯然不能適應可操作性極強的面向對象程序設計課程的教學,還應結合多媒體教學。多媒體教學所傳遞的多樣性、交互性、集成性的教學信息能充分刺激學習者的各種感官,有效地激發學生的學習興趣,使學生在課堂上獲得面向對象的感性認識,增強學生的操作意識,從而有效提高課堂的教學效果[10]。網絡化教學平臺是在校園網的支持下構建的現代化教學環境,它為學生提供了一個理想的數字化學習環境,學生可以利用計算機瀏覽多媒體電子課件、教學視頻等網絡教學資源,對不易理解的章節可以反復學習,還可通過E-mail、BBS等方式和教師或其他同學進行同步或異步交流,以解決學習中存在的問題,提高學習效果。網絡化教學有利于學生創新能力和個性的發展,有利于師生教學交流與學生協同學習,是對課堂教學的有益補充。
在具體的課堂教學過程中,把概念定義、圖解類說明等用多媒體課件講解,這樣知識表示更形象、描述信息量大,而且節約了板書時間。而知識的推理過程用板書方法,老師邊寫邊講,使學生思維和老師書寫同步。所有代碼都在真實的開發環境上開發,便于交互式教學方法的運用,通過教師的引導,在師生交互過程中完成編碼工作,以調動學生的積極性和學習興趣。另外,程序的執行過程與結果,可以制成flash動畫,上傳到網絡教學平臺上。
2.4 實踐教學改革
GIS是面向應用的技術學科,學生要學好理論,更要有較好的實干和動手能力[2]。面向對象程序設計是一門實踐性很強的課程,要求課堂教學和實驗教學緊密結合。通過同步上機實驗,使學生深入領會面向對象程序設計的功能和作用,理解程序的編譯、運行機理,加深對面向對象本質的認識。在實踐內容的安排上,應多選取綜合性、設計性實驗,少選取驗證性內容,實驗內容要有針對性,可以有意布置一些與 GIS有關的中小型程序讓學生嘗試設計,理論與實際相結合,從而較快提高學生的編程能力。在實踐教學的方法上,要打破傳統實驗教學中,只有老師講授,沒有學生自己討論與思考的模式。具體說來,將以老師為中心的實驗教學模式改變為以學生為中心的實驗教學模式,即實現師生角色的轉變。在實驗教學中,由老師確定大方向上實驗內容和實驗要達到的基本要求,由學生自己預習實驗,自己設計實驗方案,自主完成實驗過程,撰寫實驗報告,分析實驗數據等,給學生提供較大的思維空間,老師則引導學生根據實驗結果科學地進行分析推理,而不是單純地用理論去解析實驗結果。這樣一來,大大地激發了學生的學習興趣,使他們的思路開闊、興趣倍增,把被動學習變為主動學習,從而充分發揮學生的主體地位。
面向對象程序設計作為GIS軟件開發的基礎,在GIS專業課程中舉足輕重。本文主要從面向對象程序設計教學的教學內容、教學方法、教學手段及實踐教學等方面探討了教改措施。這些措施可使學生強化對面向對象概念的理解,樹立面向對象程序設計的思維,學會采用面向對象的方法來分析問題及解決問題,為下一步學習GIS軟件開發打下堅實的基礎。
[1] 鄔倫,劉瑜,張晶,等.地理信息系統-原理、方法和應用[M].北京:科學出版社,2001
[2] 李德仁.發展我國GIS高等教育的思考[J].測繪科學,2003 (4):4-6
[3] 杜培軍,閆志剛.對地理信息系統專業計算機類課程設置的探討[J].測繪通報,2005(1):63-66
[4] 鄭宇軍,王侃.C#語言程序設計基礎[M].北京:清華大學出版社,2008
[5] 危永利,鐘美,張強.中國GIS發展狀況分析[J].地理空間信息,2008(4):71-74
[6] 楊勇,黃淑英,舒蔚.面向對象程序設計C++課程教學與實踐改革探討[J].教育教學研究,2009,2:98-99
[7] Andrew Troelsen.Pro C#2008 and the.NET 3.5 Platform[M]. USA:Apress publisher,2007
[8] 何克抗.建構主義--革新傳統教學的理論基礎[J].電化教育研究,1997(3):3-5
[9] 賴日生,郭斯萍,丁潔.奧蘇伯爾的認識結構遷移理論及其意義[J].江西教育,2004(7):16-17
[10]張本成,龔偉.面向對象程序設計教學改革探討[J].內蒙古師范大學學報,2008(1):134-136
Study on the Object-oriented Programming Teaching Reformation of GIS Professionals
CHEN Youliang,XU Changrong,CHEN Shuting
(School of Architectural and Surveying Engineering,Jiangxi University of Science and Technology, Ganzhou,341000 China)
Object-oriented programming courses in GIS professionals teaching system has very important position. For the problems in object-oriented programming teaching and practice,combined withyears of teaching experience, discusses the reforms from the teaching content,teaching methods,teaching means,as well as practical aspects of teaching,w ith a view to better achieve the teaching objectives of this course, and improve the teaching effect.
GIS;object-oriented programming;teaching reform;practical teaching
2009-11-23
項目來源:江西理工大學“本科教學質量與教學改革工程”資助項目(09222);江西省高校省級教改資助項目(JXJG-08-6-8)。
P208
B
1672-4623(2010)01-0151-03
陳優良,講師,主要從事地理信息系統教學與科研工作。