开源技术在高校WebGIS课程教学中的应用探讨

2022-04-01 14:16邢华桥于明洋仇培元刘建涛
地理空间信息 2022年3期
关键词:开源软件课程

邢华桥,于明洋,孟 飞,仇培元,刘建涛

(1.山东建筑大学 测绘地理信息学院,山东 济南 250101;2.山东建筑大学 遥感与GIS研究中心,山东 济南 250101)

WebGIS是Internet技术应用于GIS开发的产物,是GIS学科的重要分支与热点研究方向[1]。顾名思义,WebGIS=Web+GIS,其涉及GIS原理、空间数据库与数据管理、计算机网络技术以及计算机语言等相关理论与方法,是一门综合性、交叉性、系统性很强的学科。与传统GIS相比,WebGIS改变了地理信息获取、传输、发布、共享的方式,使用户能在网络上进行空间数据的浏览、查询、空间分析,甚至可在线处理与计算。近年来,随着大数据、云计算、边缘计算、新一代宽带无线通信5G等计算机新兴技术的出现,WebGIS得到了快速发展,这些先进的工具和手段使GIS走向了网络化、智能化、个性化的发展道路[2]。随着WebGIS的快速发展与深入应用,其对本科人才培养与就业的作用越来越突出,许多高等学校都开设了WebGIS相关课程,并将其设置成为必修课或专业限选课[3]。

在WebGIS课程教学中,教学软件的选择和使用非常关键。目前,WebGIS课程的教学软件可分为以ArcGIS、SuperMap等为代表的商业软件和开源GIS软件两类。开源软件具有免费、开放、共享等特点,将其应用于课程教学中有助于学生了解技术的实现细节,跟踪技术的发展前沿,培养学生的创新意识。近年来,高校教学中使用开源软件越来越普遍。本文结合WebGIS课程的特点与开源GIS的发展现状,分析了开源软件或技术应用在WebGIS教学中的可能性和必要性,并以山东建筑大学为例,探讨了基于开源GIS技术的WebGIS课程教学实践。

1 WebGIS课程的特点

从本质上看,WebGIS是运行在计算机网络环境下的GIS,利用计算机网络的软硬件资源增强地理数据、信息的共享与协同处理能力,摆脱了对传统桌面端GIS软件的依赖,用户可通过网络浏览器(如IE、Google Chrome等)对数据进行处理,专业和非专业用户均可通过简单的操作实现数据浏览、专题图制图、空间分析、在线处理等空间数据操作,并能借助于分布式计算、云计算等技术提高空间数据的处理效率[4-5]。通过对WebGIS内涵的解析可知,WebGIS课程具有理论知识涉及广、实践能力要求高、技术更新速度快等特点。

1)理论知识涉及广。WebGIS课程融合了计算机网络基础、网络GIS的数据组织与管理、Web页面编程、WebGIS的应用开发技术等方面的技术与知识。学习WebGIS课程前,学生需要具备一定的计算机原理、网页编程、GIS原理等理论知识基础[6]。因此,高校WebGIS课程最好安排在大学后半时段,以山东建筑大学为例,地理信息科学专业开设的《网络GIS设计与实现》课程安排在大三下学期,在学习WebGIS之前,学生已主修或选修过《GIS原理》《GIS空间分析》《空间数据库》《面向对象程序设计》《计算机网络基础》《计算机图形学》《Java语言程序设计》和《Python程序设计》等GIS理论、计算机编程语言课程,具备了一定的编程技巧与GIS理论知识,能较轻松地理解WebGIS理论与方法,进而着手WebGIS系统开发。

2)实践能力要求高。与其他GIS开发课程类似,WebGIS课程对学生的实践能力要求非常高,学生不仅需要理解和掌握WebGIS相关理论知识,更需要通过上机实验课和业余时间多动手编写与调试代码,练习WebGIS系统设计,并利用主流的WebGIS技术体系进行系统搭建研发,以实现空间数据的在线发布、访问与调用。为了更好地提高学生的实践能力,应鼓励学生积极参与实际的WebGIS开发项目。目前,超图、ESRI、中地数码等GIS公司每年都会组织全国高校WebGIS开发比赛,如SuperMap杯全国高校GIS大赛Web开发组比赛,这些比赛为锻炼学生的开发能力提供了良好的契机[7],学生应积极参与其中,将课程所学知识结合实际问题进行WebGIS系统开发,达到以赛代学、学以致用的目的。

3)技术更新速度快。WebGIS是一门与计算机技术结合非常紧密的典型交叉型学科。近年来,随着“互联网+”、云计算、边缘计算等IT技术的飞速发展,WebGIS的应用技术与软件在编程语言、开发架构等方面更新迅猛,如ArcGIS已更新到10.7版本,新增了Notebook Sever、Excalibur等产品。目前,在WebGIS课程教学中多采用商业的GIS软件。商业软件一般经历了市场检验,具有很好的用户体验感和稳定性,但其一般价格不菲,高校购买一组软件产品,难以频繁更新,学生并不能体验融入最新开发技术的高版本GIS软件,导致WebGIS课程的实验教学常出现软件平台滞后的现象。然而,开源GIS技术更新速度快,融入新技术的能力强,能有效激发学生的科研能力与创新思维,如地图前端开发语言Openlayers每年更新多次,最新版本的Openlayers V6.5.0能使用不同的渲染器类型组成层,并对矢量切片(vector tile)进行了渲染改进,使其具有较低的内存占用。同时,开源GIS技术无额外花销,其开放性特别适用于高校教学和科研。

2 开源GIS技术的发展

开源软件是指软件开发者以某种协议发布、共享某些软件的源代码,并允许他人在遵守协议的基础上自由下载、修改、使用和散布其源代码[8-9]。开源GIS,即开放源代码的GIS软件或技术。为了实现空间数据与信息的共享和互操作,OGC协会提出了开放的地理数据互操作规范OpenGIS,致力于提供公共开放的标准与接口,使不同的地理信息提供商能够无缝链接。最具代表性的是OGC颁布的WMS、WFS、WCS、WPS等一系列地理信息服务标准。依托于这些服务规范,任何组织和个人均可发布地理信息服务,实现数据的共享与互操作。

开源GIS的设计思想通常来源于OpenGIS。开源GIS软件从技术语言的角度,可分为.NET派系、C派系、Java派系、脚本派系以及其他派系;从应用类别的角度,可分为桌面软件、分析工具、三维虚拟地球、开源数据库、地图服务器和GIS工具函数库等。在实际应用中,可从功能类别、技术实现、开发应用环境和成熟度等方面选择相应的开源GIS技术或软件。典型的开源GIS软件或技术如表1所示。

表1 开源GIS软件与技术类别及其典型代表

3 基于开源技术的WebGIS教学实践

WebGIS领域已经过多年的技术发展与变革,成熟度较高的开源技术路线为“Openlayers+GeoServer+PostGIS”的3层体系架构,如图1所示。非空间数据(如用户信息数据)存储在PostgreSQL,矢量数据存储在PostGIS,遥感影像等栅格数据以文件系统的形式组织和存储。矢量、栅格数据均可通过GeoServer服务发布软件发布为OGC标准的WMS、WFS、WMTS等Web服务。客户端采用“HTML+CSS+jQuery+Openlayers”的模式进行研发,除了能直接加载本地服务器发布的数据外,还能接入谷歌地图、天地图、地表覆盖地图等商业地图服务。客户端页面通过Web服务器(如IIS、Apache等)进行部署与发布,形成最终的服务平台。

图1 基于“Openlayers+GeoServer+PostGIS”的WebGIS开源技术架构

以山东建筑大学地理信息科学专业为例,在大三下学期设置《网络GIS设计与实现》教学课程,在大三学期末设置《网络GIS设计与实现》课程设计,详细教学设计如表2所示。在教学课程中,主要讲授开源GIS技术理论、网页编程技术、Openlayers+GeoServer+PostGIS技术体系等内容,以基本知识点为教学单元,理论课与上机实验课交叉进行,鼓励学生勤动手编写代码。在课程设计中,主要让学生利用所学的开源GIS知识设计并开发一个WebGIS系统。

表2 山东建筑大学《网络GIS设计与实现》课程教学设计

在WebGIS课程教学中,采用的教学方法主要包括案例教学法、任务驱动教学法和项目驱动教学法,3种方法层层递进、难度逐渐增大。其中,案例教学法是在课堂上以教师提前设计好的具体案例为内容,使教学内容更形象,如在讲授开源GIS理论时,可将涉及的页面编程、GIS开发等技术形成一个完整的WebGIS小型系统,再针对该系统展开讲解;任务驱动教学法是给学生布置具体的编程任务或作业,针对学生的完成情况展开讲解,如编写一个简单的Web页面,并完成常规的人机交互;项目驱动教学法是指以实际项目为指导,让学生真正参与到实际项目的设计与开发过程中,该方法对学生的要求较高,需具备一定的理论知识和实际编程经验,如在《网络GIS设计与实现》课程设计中,将学生分组,不同小组选取不同的WebGIS开发题目,利用一周时间进行小型WebGIS系统的设计与开发,并根据实际数据完成项目要求。

4 结语

WebGIS课程是GIS教学体系中非常重要的理论与应用型课程,对于学生开发实践能力的培养与提升非常关键,深刻影响着学生未来的就业与深造。WebGIS课程具有理论知识涉及面广、动手能力要求高、技术更新速度快等特点,传统的填鸭式、灌输式等教育模式难以产生高质量的教学效果。本文通过分析WebGIS课程的特点以及开源GIS技术的发展现状,探讨了开源GIS在WebGIS课程教学中的实践应用,为WebGIS课程教学提供了一种新思路。

为了更好地教授WebGIS课程,首先需重视理论与实践相结合的课程教学体系建设,避免“重理论讲解、轻动手实践”的教学思想,适当增加上机实验学时,结合实际应用开发案例开展教学工作;其次需转变传统纸质试卷对基础理论的考试模式,丰富课程考核形式,如增加开放式开发实验选题,以2~4人为小组共同实现小型实验系统的开发,并采用现场答辩的方式考查学生对WebGIS技术的掌握程度;最后教师也应积极不断地投身新知识、新技术的学习中,拓宽自己的知识面,结合科研工作和WebGIS工程研发经验,真正地使教学与研究相结合,调动学生学习的热情和主动性,提升WebGIS的教学质量,增强学生的创新意识,进一步满足社会和企业对GIS应用型人才的需求。

猜你喜欢
开源软件课程
校园武术“学、练、赛”一体化实践探索
禅宗软件
课程思政在专业基础课程中的实施
《管理学原理》课程中开展“课程思政”教学改革
课程思政在组织行为学课程教学中的探索与实践
工业软件 自主创新
五毛钱能买多少头牛
2019(第十四届)开源中国开源世界
2019开源杰出贡献奖
A—Level统计课程和AP统计课程的比较