黎 华,张晓盼,龚 珍
(武汉理工大学,湖北 武汉 430070)
GIS专业的Java程序设计教学改革初探
黎 华,张晓盼,龚 珍
(武汉理工大学,湖北 武汉 430070)
Java语言的独特优势促使其在GIS专业教学中起到越来越重要的作用。本文分析了GIS专业教学中Java程序设计课程教学存在的问题,结合武汉理工大学GIS专业的Java程序设计课程的改革实践,提出了总体的改革思路,并从教学、实践、考核等几个方面提出了具体的改革要求和内容。该门课程的教学改革能推动GIS专业的Java程序设计语言的学习,提高学生的实践动手能力和解决GIS专业问题的能力。同时,该教学改革模式对兄弟院校的GIS专业程序设计语言方面的教学实践能起到相应的借鉴作用。
GIS专业;Java程序设计;教学改革;教学实践
随着社会上对于空间信息处理、应用、开发的人才需求越来越旺盛,开设地理信息系统(GIS)专业的高校和科研机构也越来越多,GIS教育已成为当前及今后地理信息系统人才培养的根本和地理信息产业发展的重要推动力[1]。地理信息系统是一种交叉性的学科,计算机科学与技术是GIS专业重要的学科基础[2]。从本质上说,地理信息系统本身就是一种计算机系统,软硬件系统在GIS中也是必不可少的。在地理信息系统应用中,现在通用的地理信息系统平台有时不能完全满足需求,在这种情况下,必须基于地理信息系统平台进行程序设计,以完善和提升地理信息系统在相关行业领域的应用宽度和广度。因此,在地理信息系统专业的教学过程中,程序设计语言的教学安排是必不可少的[3]。
现今的程序设计语言也是多种多样,如C、Pascal、C++、Visual Basic、C#、Java等。每种程序设计语言都有它自身的优势和适用的领域范围。但是进入网络时代后,Java语言与网络的紧密结合使得它异军突起,尤其是云计算和移动互联网的发展和产业化,使其更具备了显著的优势和广阔的发展前景。Java程序设计课程是很多高校计算机基础教学的骨干课程之一,而且在教育部计算机基础课程教学指导委员会制定的白皮书中,Java程序设计被列为核心课程[4],由此可见Java课程在计算机教学中的重要作用。它对学生的实践能力的提高和就业能力的提升都具有重要的推动作用。而且,现在地理信息系统的前沿方向是云GIS和移动GIS,而这些正是Java语言的独特优势。Java语言的跨平台、动态Web、Internet计算等特性使得它能够在WebGIS的开发和应用方面大放异彩。
本文拟分析地理信息系统专业中Java程序设计课程的现状及存在的问题,并基于存在的问题提出Java程序设计课程的教学改革思路和方向,最后探讨课程教学改革的具体内容。
由于Java语言在地理信息系统专业的独特优势和广泛的应用前景,现在很多高校的地理信息系统专业都开设了Java程序设计或与Java相关的课程,但或多或少存在相应的问题。通过查阅相关文献[5-8]和现场调研发现,该门课程的教学现状及存在问题表现在以下几个方面:
(1) 跟风开设。很多地理信息系统专业在进行本专业的培养方案制定的时候,经过考察兄弟院校、科研院所同样专业的培养方案时,发现开设了Java程序设计这门课程,再加上Java语言又称之为“基于网络的语言”,以及Java语言的跨平台的优势,觉得也应该开设Java程序设计的课程。有些可能没有细细体会地理信息系统专业的培养目标和毕业要求,因此导致开设的Java程序设计课程与整体培养方案的融合度不高,Java课程与其他课程的关联性认识不到位。这样在制定课程教学大纲时,教学内容的安排就会过于盲目,以至于虽然开设了Java课程,但是实际效果可能并不理想,导致Java课程显得很孤单,与GIS专业的其他教学课程起不到应有的承上启下作用。
(2) 师资力量匮乏。Java语言是一门实践性很强的课程,需要任课教师有较强的实践项目经验,同时要求教师能将Java语言和地理信息系统的概念融会贯通,能基于Java语言解决地理信息系统领域的相关问题。因此,对任课教师的要求是相对较高的。计算机学院的教师对Java语言可能很熟悉,但是缺乏将其应用于地理信息系统领域的实践锻炼。而地理信息系统的教师虽然深刻理解地理信息系统的内涵和应用开发模式,但是以前应用更多的是微软的程序开发语言,如C++、C#等,真正转变到Java语言方面还有一段路要走,还需要更多的实践锻炼来指导Java在GIS专业的教学。
(3) Java授课内容太多,教学内容与教学时间的矛盾。Java语言是一种面向对象的语言,同时又是一种“面向网络”的语言,因此它的知识点非常多,涉及面也非常广泛。在有限的教学时间内,如此多的Java内容,如何取舍就是需要解决的问题。基础语法知识内容多了,结合GIS的Java语言内容势必就少了。与GIS相关的Java内容扩展多了,基本语法知识就巩固不了,这些内容就成了无源之水。因此,必须根据整个培养方案来合理安排好Java的具体教学内容和教学学时。
(4) 教师讲解和学生理解的差距。很多学生对程序设计刚开始是畏惧的,带着这种心理上Java语言的课程,对学生课程的理解和知识点的掌握是有影响的。教师若单纯从自身角度去讲解课程,不注重从学生角度来看待问题,学生则很难真正理解和掌握这些知识点。因此,如何达到教师讲解和学生理解的平衡,也是Java语言在GIS专业教学中所要解决的问题。
2.1 改革思路
正因为GIS专业中Java程序设计课程的教学现状及存在的问题,所以有必要对Java程序设计课程进行教学改革。以培养目标和毕业要求为导向,以服务社会和实现就业为目标,制定相应的教学内容;以增强学生的实践动手能力为出发点,改革实践方法和制定相应的实践内容;以培养学生的综合素质为推手,制定综合的课程考核方法;为社会输送一流的专业人才。
2.2 改革方法
2.2.1 课程教学内容的改革
在具体进行改革之前,要分析是否需要在GIS专业开设Java程序设计课程。经过调查分析,现在的市场需求对GIS专业的毕业生是有Java技能要求的。武汉理工大学GIS专业培养目标中明确要求“精通设计、开发和测试地理信息系统的工具和软硬件技术,能够解决资源开发与灾害治理、城乡规划、环境保护与管理等领域的实际问题”,Java语言基于网络的技术特点,使得它在WebGIS开发方面具有先天的优势,可以满足或协助完成GIS专业的此培养目标的要求。
武汉理工大学GIS专业的教学过程中已经开设了计算机程序设计基础(C语言)、GIS程序设计语言(C#)课程,这些课程对Java语言的学习非常有帮助,而且对Java程序设计课程的教学内容的组织和安排有借鉴作用,能推动Java程序设计更深层次内容的学习。图1是该校GIS专业的教学进度图(部分),从图中可以看出,Java程序设计的教学安排是以GIS程序设计语言(C#)课程为基础,结合计算机图形学、算法与数据结构、空间数据库等课程的学习,进而推广到具体的工程实践(矿山GIS、资源环境信息系统)中去的,形成了一个较完整的课程体系。通过这种体系架构的教学,学生能掌握程序设计的思想和方法,能基于软件工程的实践去解决GIS专业的具体行业领域问题;而且对Java语言的深入学习,更能拓宽GIS专业的应用广度,将GIS的应用推广到云GIS和移动GIS的应用角度,激发学生的学习热情,为学生今后的工作和继续深造提供更加明确的方向。
图1 GIS专业的教学进度(部分)
Java程序设计的内容多而庞杂,因此,在制定具体教学内容的时候,需要有所侧重点。表1是该校GIS专业的具体教学内容的安排。在基础环节的学习中,考虑到GIS专业前期已经学习了计算机程序设计基础(C语言)和GIS程序设计语言(C#)课程,因此基本语法、面向对象这些基本的内容可以简单回顾甚至不讲,只是需要让学生明白Java程序设计语法方面与前述课程所不同的地方即可。应重点讲述Java的工作原理、环境搭建和集成开发环境(IDE)的使用,让学生能基于IDE进行Java程序的开发,并基于具体的开发过程理解Java的工作原理。在高级环节的学习中,所有内容就很重要了,尤其是涉及与WebGIS相关的内容(如Java Applet、数据库编程、Servlet等),因为这些内容是Java程序在构建WebGIS的核心技术,学生必须掌握这些知识点,才能利用Java程序设计进行WebGIS系统的开发。
表1 GIS专业的Java程序设计课程教学内容
当然,在具体教学过程中,可以将一个案例贯穿于整个课程教学中。采用一个小型的地图系统来构建该案例,该地图系统中有河流、道路、建筑、兴趣点。教师在讲解过程中,需尽量考虑学生的理解程度,以学生熟悉的GIS专业中的概念和例子(河流、道路、建筑、兴趣点等)来讲解知识点,而且将这些概念和例子贯穿于教学始终,使学生更容易理解和接受。实践证明[9],采用统一案例教学方法,能激发学生对问题的整体解决方案的探索,增强学生对所学问题的综合运用。
2.2.2 实践教学的改革
理论与实践的结合永远是课程教学的主旋律,尤其是程序设计语言,学生若仅仅是听课、看代码,而不去动手写代码,永远都不可能真正掌握程序设计语言。Java语言更是一门实践性很强的课程[10],在GIS专业的Java程序设计教学过程中,也必然要大量地进行实践教学的历练,学生要多读、多改、多写代码,在实践中成长。
实践总体分为验证性实践和综合性实践。验证性实践结合教学内容中的地图系统来设计实践内容,如基于IDE集成开发环境的Console的小地图系统的信息显示、基于AWT图形工具包的地图系统的绘制、基于Servlet的地图系统的网上发布、基于Applet的地图系统的插件等。综合性实践以项目驱动为出发点,以项目实践的形式,采用分组的方式完成指定的项目实践。以项目驱动的实践形式,有助于培养学生的团队合作能力,强化学生利用Java语言解决实际工程的能力,真正体会如何将Java程序设计应用到具体实践中,激发学生的学习热情和动力。当然,在以项目驱动的实践活动中,教师要进行实时的指导、合理的分工和严格的质量管控,保证每个学生都能在项目实践中提升自身的编程能力和解决问题的能力。
实践教学对教师的要求比较高,教师必须要掌握Java语言的具体实践,同时也要具备将Java程序设计应用到GIS专业问题的实践能力。笔者所在院校选派GIS专业教师到校外参加Java培训并实践,培养能胜任在GIS专业进行Java程序设计教学的老师,保证其能适应对学生的实践教学的培养。
2.2.3 考核方式的改革
如何正确、公平、客观地评价每个学生的学习状态,也是每门课程必然要经历的阶段。传统的课程考核方式是笔试成绩加上平时考核与实践成绩的综合,这种考核方式有一定的优势,但是在实践性很强的课程考核中,并不一定能真正考查出学生利用Java程序设计解决实际问题的能力。具体来说,考核应包括4个方面的内容:一是平时的作业和考勤,主要考查学生平时的学习情况;二是平时的实践,包括验证性实践的成绩和项目驱动实践中的成绩,主要考查学生的实践动手能力;三是期末的笔试,主要考查学生对基础知识的掌握程度;四是上机考试,主要考查学生实践编程能力和独立自主解决问题的能力。这种全方位、立体式的考查方式,能综合全面地评价学生对课程内容的把握程度和实践动手能力,能保证学生在课程的每个环节都必须认真对待,才能考出比较好的成绩,才能学有所成。
经过考察和调研,本文分析了GIS专业的Java程序设计课程的教学现状和存在问题,主要包括跟风开设、师资力量匮乏、Java授课教学内容和教学时间的矛盾、教师讲解和学生理解的差距等问题;结合武汉理工大学GIS专业的Java程序设计课程的改革实践,提出了相应的改革思路,并基于这些问题提出了具体改革措施,主要从教学、实践、考核等几个方面进行了具体的论述。实践表明,该门课程的改革对学生掌握Java程序设计起到了积极的作用,提高了学生的实践动手能力,增强了学生的团队合作精神,对GIS专业的整个体系架构起到了相应的支撑作用;同时,希望该教学改革模式对兄弟院校的GIS专业的程序设计语言方面的教学实践能起到一定的借鉴作用。
[1] 杜培军,闫志刚. 对地理信息系统专业计算机类课程设置的探讨[J]. 测绘通报, 2005(1):63-66.
[2] 杨树文,闫浩文,孙建国. 地理信息系统专业教学实践与改革探索[J]. 测绘科学,2011,36(1):226-228.
[3] 李天文,王林刚,李庚泽,等. 地理信息系统专业课程体系建设研究[J]. 中国大学教学,2011(1):33-35.
[4] 陈红军,耿永军,闫洪亮. 《JAVA程序设计》课程教学改革探讨[J]. 信息系统工程,2010(1):128-130.
[5] 李茂民. 《JAVA语言程序设计》课程教学改革实践探讨[J]. 软件工程师,2015,18(5): 42-43.
[6] 李瑞生. Java 程序设计课程教学中遇到的问题和对策[J]. 计算机教育,2010(22):119-122.
[8] 姜大志, 孙浩军. 基于CDIO的主动式项目驱动学习方法研究[J]. 高等工程教育研究, 2012(4):159-164.
[9] 张临杰,冯彦. 一个贯穿 Java 语言教学的任务实例探究[J]. 高等理科教育,2015(2): 114-117.
[10] 王明芳. 基于元认知策略的《Java程序设计》课堂教学研究[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专业的Java程序设计教学改革初探[J].测绘通报,2017(4):145-148.
10.13474/j.cnki.11-2246.2017.0140.
2016-05-03
国家自然科学基金青年基金(41301588);国家自然科学基金面上项目(41571514);武汉理工大学教研项目(W2015105)
黎 华(1978—),男,副教授,主要从事地理信息系统的教学与科研工作。E-mail:leon@whut.edu.cn
G64
A
0494-0911(2017)04-0145-04