黎 華,張曉盼,龔 珍
(武漢理工大學(xué),湖北 武漢 430070)
GIS專業(yè)的Java程序設(shè)計教學(xué)改革初探
黎 華,張曉盼,龔 珍
(武漢理工大學(xué),湖北 武漢 430070)
Java語言的獨特優(yōu)勢促使其在GIS專業(yè)教學(xué)中起到越來越重要的作用。本文分析了GIS專業(yè)教學(xué)中Java程序設(shè)計課程教學(xué)存在的問題,結(jié)合武漢理工大學(xué)GIS專業(yè)的Java程序設(shè)計課程的改革實踐,提出了總體的改革思路,并從教學(xué)、實踐、考核等幾個方面提出了具體的改革要求和內(nèi)容。該門課程的教學(xué)改革能推動GIS專業(yè)的Java程序設(shè)計語言的學(xué)習(xí),提高學(xué)生的實踐動手能力和解決GIS專業(yè)問題的能力。同時,該教學(xué)改革模式對兄弟院校的GIS專業(yè)程序設(shè)計語言方面的教學(xué)實踐能起到相應(yīng)的借鑒作用。
GIS專業(yè);Java程序設(shè)計;教學(xué)改革;教學(xué)實踐
隨著社會上對于空間信息處理、應(yīng)用、開發(fā)的人才需求越來越旺盛,開設(shè)地理信息系統(tǒng)(GIS)專業(yè)的高校和科研機構(gòu)也越來越多,GIS教育已成為當(dāng)前及今后地理信息系統(tǒng)人才培養(yǎng)的根本和地理信息產(chǎn)業(yè)發(fā)展的重要推動力[1]。地理信息系統(tǒng)是一種交叉性的學(xué)科,計算機科學(xué)與技術(shù)是GIS專業(yè)重要的學(xué)科基礎(chǔ)[2]。從本質(zhì)上說,地理信息系統(tǒng)本身就是一種計算機系統(tǒng),軟硬件系統(tǒng)在GIS中也是必不可少的。在地理信息系統(tǒng)應(yīng)用中,現(xiàn)在通用的地理信息系統(tǒng)平臺有時不能完全滿足需求,在這種情況下,必須基于地理信息系統(tǒng)平臺進(jìn)行程序設(shè)計,以完善和提升地理信息系統(tǒng)在相關(guān)行業(yè)領(lǐng)域的應(yīng)用寬度和廣度。因此,在地理信息系統(tǒng)專業(yè)的教學(xué)過程中,程序設(shè)計語言的教學(xué)安排是必不可少的[3]。
現(xiàn)今的程序設(shè)計語言也是多種多樣,如C、Pascal、C++、Visual Basic、C#、Java等。每種程序設(shè)計語言都有它自身的優(yōu)勢和適用的領(lǐng)域范圍。但是進(jìn)入網(wǎng)絡(luò)時代后,Java語言與網(wǎng)絡(luò)的緊密結(jié)合使得它異軍突起,尤其是云計算和移動互聯(lián)網(wǎng)的發(fā)展和產(chǎn)業(yè)化,使其更具備了顯著的優(yōu)勢和廣闊的發(fā)展前景。Java程序設(shè)計課程是很多高校計算機基礎(chǔ)教學(xué)的骨干課程之一,而且在教育部計算機基礎(chǔ)課程教學(xué)指導(dǎo)委員會制定的白皮書中,Java程序設(shè)計被列為核心課程[4],由此可見Java課程在計算機教學(xué)中的重要作用。它對學(xué)生的實踐能力的提高和就業(yè)能力的提升都具有重要的推動作用。而且,現(xiàn)在地理信息系統(tǒng)的前沿方向是云GIS和移動GIS,而這些正是Java語言的獨特優(yōu)勢。Java語言的跨平臺、動態(tài)Web、Internet計算等特性使得它能夠在WebGIS的開發(fā)和應(yīng)用方面大放異彩。
本文擬分析地理信息系統(tǒng)專業(yè)中Java程序設(shè)計課程的現(xiàn)狀及存在的問題,并基于存在的問題提出Java程序設(shè)計課程的教學(xué)改革思路和方向,最后探討課程教學(xué)改革的具體內(nèi)容。
由于Java語言在地理信息系統(tǒng)專業(yè)的獨特優(yōu)勢和廣泛的應(yīng)用前景,現(xiàn)在很多高校的地理信息系統(tǒng)專業(yè)都開設(shè)了Java程序設(shè)計或與Java相關(guān)的課程,但或多或少存在相應(yīng)的問題。通過查閱相關(guān)文獻(xiàn)[5-8]和現(xiàn)場調(diào)研發(fā)現(xiàn),該門課程的教學(xué)現(xiàn)狀及存在問題表現(xiàn)在以下幾個方面:
(1) 跟風(fēng)開設(shè)。很多地理信息系統(tǒng)專業(yè)在進(jìn)行本專業(yè)的培養(yǎng)方案制定的時候,經(jīng)過考察兄弟院校、科研院所同樣專業(yè)的培養(yǎng)方案時,發(fā)現(xiàn)開設(shè)了Java程序設(shè)計這門課程,再加上Java語言又稱之為“基于網(wǎng)絡(luò)的語言”,以及Java語言的跨平臺的優(yōu)勢,覺得也應(yīng)該開設(shè)Java程序設(shè)計的課程。有些可能沒有細(xì)細(xì)體會地理信息系統(tǒng)專業(yè)的培養(yǎng)目標(biāo)和畢業(yè)要求,因此導(dǎo)致開設(shè)的Java程序設(shè)計課程與整體培養(yǎng)方案的融合度不高,Java課程與其他課程的關(guān)聯(lián)性認(rèn)識不到位。這樣在制定課程教學(xué)大綱時,教學(xué)內(nèi)容的安排就會過于盲目,以至于雖然開設(shè)了Java課程,但是實際效果可能并不理想,導(dǎo)致Java課程顯得很孤單,與GIS專業(yè)的其他教學(xué)課程起不到應(yīng)有的承上啟下作用。
(2) 師資力量匱乏。Java語言是一門實踐性很強的課程,需要任課教師有較強的實踐項目經(jīng)驗,同時要求教師能將Java語言和地理信息系統(tǒng)的概念融會貫通,能基于Java語言解決地理信息系統(tǒng)領(lǐng)域的相關(guān)問題。因此,對任課教師的要求是相對較高的。計算機學(xué)院的教師對Java語言可能很熟悉,但是缺乏將其應(yīng)用于地理信息系統(tǒng)領(lǐng)域的實踐鍛煉。而地理信息系統(tǒng)的教師雖然深刻理解地理信息系統(tǒng)的內(nèi)涵和應(yīng)用開發(fā)模式,但是以前應(yīng)用更多的是微軟的程序開發(fā)語言,如C++、C#等,真正轉(zhuǎn)變到Java語言方面還有一段路要走,還需要更多的實踐鍛煉來指導(dǎo)Java在GIS專業(yè)的教學(xué)。
(3) Java授課內(nèi)容太多,教學(xué)內(nèi)容與教學(xué)時間的矛盾。Java語言是一種面向?qū)ο蟮恼Z言,同時又是一種“面向網(wǎng)絡(luò)”的語言,因此它的知識點非常多,涉及面也非常廣泛。在有限的教學(xué)時間內(nèi),如此多的Java內(nèi)容,如何取舍就是需要解決的問題?;A(chǔ)語法知識內(nèi)容多了,結(jié)合GIS的Java語言內(nèi)容勢必就少了。與GIS相關(guān)的Java內(nèi)容擴展多了,基本語法知識就鞏固不了,這些內(nèi)容就成了無源之水。因此,必須根據(jù)整個培養(yǎng)方案來合理安排好Java的具體教學(xué)內(nèi)容和教學(xué)學(xué)時。
(4) 教師講解和學(xué)生理解的差距。很多學(xué)生對程序設(shè)計剛開始是畏懼的,帶著這種心理上Java語言的課程,對學(xué)生課程的理解和知識點的掌握是有影響的。教師若單純從自身角度去講解課程,不注重從學(xué)生角度來看待問題,學(xué)生則很難真正理解和掌握這些知識點。因此,如何達(dá)到教師講解和學(xué)生理解的平衡,也是Java語言在GIS專業(yè)教學(xué)中所要解決的問題。
2.1 改革思路
正因為GIS專業(yè)中Java程序設(shè)計課程的教學(xué)現(xiàn)狀及存在的問題,所以有必要對Java程序設(shè)計課程進(jìn)行教學(xué)改革。以培養(yǎng)目標(biāo)和畢業(yè)要求為導(dǎo)向,以服務(wù)社會和實現(xiàn)就業(yè)為目標(biāo),制定相應(yīng)的教學(xué)內(nèi)容;以增強學(xué)生的實踐動手能力為出發(fā)點,改革實踐方法和制定相應(yīng)的實踐內(nèi)容;以培養(yǎng)學(xué)生的綜合素質(zhì)為推手,制定綜合的課程考核方法;為社會輸送一流的專業(yè)人才。
2.2 改革方法
2.2.1 課程教學(xué)內(nèi)容的改革
在具體進(jìn)行改革之前,要分析是否需要在GIS專業(yè)開設(shè)Java程序設(shè)計課程。經(jīng)過調(diào)查分析,現(xiàn)在的市場需求對GIS專業(yè)的畢業(yè)生是有Java技能要求的。武漢理工大學(xué)GIS專業(yè)培養(yǎng)目標(biāo)中明確要求“精通設(shè)計、開發(fā)和測試地理信息系統(tǒng)的工具和軟硬件技術(shù),能夠解決資源開發(fā)與災(zāi)害治理、城鄉(xiāng)規(guī)劃、環(huán)境保護(hù)與管理等領(lǐng)域的實際問題”,Java語言基于網(wǎng)絡(luò)的技術(shù)特點,使得它在WebGIS開發(fā)方面具有先天的優(yōu)勢,可以滿足或協(xié)助完成GIS專業(yè)的此培養(yǎng)目標(biāo)的要求。
武漢理工大學(xué)GIS專業(yè)的教學(xué)過程中已經(jīng)開設(shè)了計算機程序設(shè)計基礎(chǔ)(C語言)、GIS程序設(shè)計語言(C#)課程,這些課程對Java語言的學(xué)習(xí)非常有幫助,而且對Java程序設(shè)計課程的教學(xué)內(nèi)容的組織和安排有借鑒作用,能推動Java程序設(shè)計更深層次內(nèi)容的學(xué)習(xí)。圖1是該校GIS專業(yè)的教學(xué)進(jìn)度圖(部分),從圖中可以看出,Java程序設(shè)計的教學(xué)安排是以GIS程序設(shè)計語言(C#)課程為基礎(chǔ),結(jié)合計算機圖形學(xué)、算法與數(shù)據(jù)結(jié)構(gòu)、空間數(shù)據(jù)庫等課程的學(xué)習(xí),進(jìn)而推廣到具體的工程實踐(礦山GIS、資源環(huán)境信息系統(tǒng))中去的,形成了一個較完整的課程體系。通過這種體系架構(gòu)的教學(xué),學(xué)生能掌握程序設(shè)計的思想和方法,能基于軟件工程的實踐去解決GIS專業(yè)的具體行業(yè)領(lǐng)域問題;而且對Java語言的深入學(xué)習(xí),更能拓寬GIS專業(yè)的應(yīng)用廣度,將GIS的應(yīng)用推廣到云GIS和移動GIS的應(yīng)用角度,激發(fā)學(xué)生的學(xué)習(xí)熱情,為學(xué)生今后的工作和繼續(xù)深造提供更加明確的方向。
圖1 GIS專業(yè)的教學(xué)進(jìn)度(部分)
Java程序設(shè)計的內(nèi)容多而龐雜,因此,在制定具體教學(xué)內(nèi)容的時候,需要有所側(cè)重點。表1是該校GIS專業(yè)的具體教學(xué)內(nèi)容的安排。在基礎(chǔ)環(huán)節(jié)的學(xué)習(xí)中,考慮到GIS專業(yè)前期已經(jīng)學(xué)習(xí)了計算機程序設(shè)計基礎(chǔ)(C語言)和GIS程序設(shè)計語言(C#)課程,因此基本語法、面向?qū)ο筮@些基本的內(nèi)容可以簡單回顧甚至不講,只是需要讓學(xué)生明白Java程序設(shè)計語法方面與前述課程所不同的地方即可。應(yīng)重點講述Java的工作原理、環(huán)境搭建和集成開發(fā)環(huán)境(IDE)的使用,讓學(xué)生能基于IDE進(jìn)行Java程序的開發(fā),并基于具體的開發(fā)過程理解Java的工作原理。在高級環(huán)節(jié)的學(xué)習(xí)中,所有內(nèi)容就很重要了,尤其是涉及與WebGIS相關(guān)的內(nèi)容(如Java Applet、數(shù)據(jù)庫編程、Servlet等),因為這些內(nèi)容是Java程序在構(gòu)建WebGIS的核心技術(shù),學(xué)生必須掌握這些知識點,才能利用Java程序設(shè)計進(jìn)行WebGIS系統(tǒng)的開發(fā)。
表1 GIS專業(yè)的Java程序設(shè)計課程教學(xué)內(nèi)容
當(dāng)然,在具體教學(xué)過程中,可以將一個案例貫穿于整個課程教學(xué)中。采用一個小型的地圖系統(tǒng)來構(gòu)建該案例,該地圖系統(tǒng)中有河流、道路、建筑、興趣點。教師在講解過程中,需盡量考慮學(xué)生的理解程度,以學(xué)生熟悉的GIS專業(yè)中的概念和例子(河流、道路、建筑、興趣點等)來講解知識點,而且將這些概念和例子貫穿于教學(xué)始終,使學(xué)生更容易理解和接受。實踐證明[9],采用統(tǒng)一案例教學(xué)方法,能激發(fā)學(xué)生對問題的整體解決方案的探索,增強學(xué)生對所學(xué)問題的綜合運用。
2.2.2 實踐教學(xué)的改革
理論與實踐的結(jié)合永遠(yuǎn)是課程教學(xué)的主旋律,尤其是程序設(shè)計語言,學(xué)生若僅僅是聽課、看代碼,而不去動手寫代碼,永遠(yuǎn)都不可能真正掌握程序設(shè)計語言。Java語言更是一門實踐性很強的課程[10],在GIS專業(yè)的Java程序設(shè)計教學(xué)過程中,也必然要大量地進(jìn)行實踐教學(xué)的歷練,學(xué)生要多讀、多改、多寫代碼,在實踐中成長。
實踐總體分為驗證性實踐和綜合性實踐。驗證性實踐結(jié)合教學(xué)內(nèi)容中的地圖系統(tǒng)來設(shè)計實踐內(nèi)容,如基于IDE集成開發(fā)環(huán)境的Console的小地圖系統(tǒng)的信息顯示、基于AWT圖形工具包的地圖系統(tǒng)的繪制、基于Servlet的地圖系統(tǒng)的網(wǎng)上發(fā)布、基于Applet的地圖系統(tǒng)的插件等。綜合性實踐以項目驅(qū)動為出發(fā)點,以項目實踐的形式,采用分組的方式完成指定的項目實踐。以項目驅(qū)動的實踐形式,有助于培養(yǎng)學(xué)生的團(tuán)隊合作能力,強化學(xué)生利用Java語言解決實際工程的能力,真正體會如何將Java程序設(shè)計應(yīng)用到具體實踐中,激發(fā)學(xué)生的學(xué)習(xí)熱情和動力。當(dāng)然,在以項目驅(qū)動的實踐活動中,教師要進(jìn)行實時的指導(dǎo)、合理的分工和嚴(yán)格的質(zhì)量管控,保證每個學(xué)生都能在項目實踐中提升自身的編程能力和解決問題的能力。
實踐教學(xué)對教師的要求比較高,教師必須要掌握J(rèn)ava語言的具體實踐,同時也要具備將Java程序設(shè)計應(yīng)用到GIS專業(yè)問題的實踐能力。筆者所在院校選派GIS專業(yè)教師到校外參加Java培訓(xùn)并實踐,培養(yǎng)能勝任在GIS專業(yè)進(jìn)行Java程序設(shè)計教學(xué)的老師,保證其能適應(yīng)對學(xué)生的實踐教學(xué)的培養(yǎng)。
2.2.3 考核方式的改革
如何正確、公平、客觀地評價每個學(xué)生的學(xué)習(xí)狀態(tài),也是每門課程必然要經(jīng)歷的階段。傳統(tǒng)的課程考核方式是筆試成績加上平時考核與實踐成績的綜合,這種考核方式有一定的優(yōu)勢,但是在實踐性很強的課程考核中,并不一定能真正考查出學(xué)生利用Java程序設(shè)計解決實際問題的能力。具體來說,考核應(yīng)包括4個方面的內(nèi)容:一是平時的作業(yè)和考勤,主要考查學(xué)生平時的學(xué)習(xí)情況;二是平時的實踐,包括驗證性實踐的成績和項目驅(qū)動實踐中的成績,主要考查學(xué)生的實踐動手能力;三是期末的筆試,主要考查學(xué)生對基礎(chǔ)知識的掌握程度;四是上機考試,主要考查學(xué)生實踐編程能力和獨立自主解決問題的能力。這種全方位、立體式的考查方式,能綜合全面地評價學(xué)生對課程內(nèi)容的把握程度和實踐動手能力,能保證學(xué)生在課程的每個環(huán)節(jié)都必須認(rèn)真對待,才能考出比較好的成績,才能學(xué)有所成。
經(jīng)過考察和調(diào)研,本文分析了GIS專業(yè)的Java程序設(shè)計課程的教學(xué)現(xiàn)狀和存在問題,主要包括跟風(fēng)開設(shè)、師資力量匱乏、Java授課教學(xué)內(nèi)容和教學(xué)時間的矛盾、教師講解和學(xué)生理解的差距等問題;結(jié)合武漢理工大學(xué)GIS專業(yè)的Java程序設(shè)計課程的改革實踐,提出了相應(yīng)的改革思路,并基于這些問題提出了具體改革措施,主要從教學(xué)、實踐、考核等幾個方面進(jìn)行了具體的論述。實踐表明,該門課程的改革對學(xué)生掌握J(rèn)ava程序設(shè)計起到了積極的作用,提高了學(xué)生的實踐動手能力,增強了學(xué)生的團(tuán)隊合作精神,對GIS專業(yè)的整個體系架構(gòu)起到了相應(yīng)的支撐作用;同時,希望該教學(xué)改革模式對兄弟院校的GIS專業(yè)的程序設(shè)計語言方面的教學(xué)實踐能起到一定的借鑒作用。
[1] 杜培軍,閆志剛. 對地理信息系統(tǒng)專業(yè)計算機類課程設(shè)置的探討[J]. 測繪通報, 2005(1):63-66.
[2] 楊樹文,閆浩文,孫建國. 地理信息系統(tǒng)專業(yè)教學(xué)實踐與改革探索[J]. 測繪科學(xué),2011,36(1):226-228.
[3] 李天文,王林剛,李庚澤,等. 地理信息系統(tǒng)專業(yè)課程體系建設(shè)研究[J]. 中國大學(xué)教學(xué),2011(1):33-35.
[4] 陳紅軍,耿永軍,閆洪亮. 《JAVA程序設(shè)計》課程教學(xué)改革探討[J]. 信息系統(tǒng)工程,2010(1):128-130.
[5] 李茂民. 《JAVA語言程序設(shè)計》課程教學(xué)改革實踐探討[J]. 軟件工程師,2015,18(5): 42-43.
[6] 李瑞生. Java 程序設(shè)計課程教學(xué)中遇到的問題和對策[J]. 計算機教育,2010(22):119-122.
[8] 姜大志, 孫浩軍. 基于CDIO的主動式項目驅(qū)動學(xué)習(xí)方法研究[J]. 高等工程教育研究, 2012(4):159-164.
[9] 張臨杰,馮彥. 一個貫穿 Java 語言教學(xué)的任務(wù)實例探究[J]. 高等理科教育,2015(2): 114-117.
[10] 王明芳. 基于元認(rèn)知策略的《Java程序設(shè)計》課堂教學(xué)研究[J]. 教育理論與實踐, 2015, 35(6):52-53.
Teaching Reform of Java Programming in GIS Major
LI Hua,ZHANG Xiaopan,GONG Zhen
(Wuhan University of Technology,Wuhan 430070,China)
Java language plays an important role in GIS education due to its unique advantages. The problems of Java Programming in GIS teaching are analyzed, combined with Java programming reform practice in GIS major of Wuhan University of Technology. The overall reform idea is proposed, and the specific reform requirements and contents about teaching, practice, assessment are presented. The course teaching reform can promote the Java programming learning of GIS major, and improve students’ ability about practice and solving the problems of GIS major. Meanwhile, other colleges can learn from this teaching reform model and promote their programming teaching of GIS major.
GIS major; Java programming; teaching reform; teaching practice
黎華,張曉盼,龔珍.GIS專業(yè)的Java程序設(shè)計教學(xué)改革初探[J].測繪通報,2017(4):145-148.
10.13474/j.cnki.11-2246.2017.0140.
2016-05-03
國家自然科學(xué)基金青年基金(41301588);國家自然科學(xué)基金面上項目(41571514);武漢理工大學(xué)教研項目(W2015105)
黎 華(1978—),男,副教授,主要從事地理信息系統(tǒng)的教學(xué)與科研工作。E-mail:leon@whut.edu.cn
G64
A
0494-0911(2017)04-0145-04