第1章 剖析WebGIS
对于WebGIS这个“热门”名词,如果你是初次接触,可以先到Google、Cuil或其他搜索引擎中去了解一下;如果你已初窥门径,我们将先给您介绍一些与WebGIS相关的术语:GML、ArcIMS、Ajax、ASP、ASP.NET、JSP、JSF、OGC、Java Applet、JavaScript,此外还有:Flex、SOA、SOAP、GIS服务、RESTful服务和Mashup等,术语还可以列举许多,不过在此只点到为止。
当然,罗列这一堆术语的本意并不是“恐吓”读者,以此来夸耀作者的博学,恰恰相反,我们希望能通过本书,为读者从这堆术语的“泥淖”中寻找一条坚实可靠的“出路”,故弄玄虚和名词考证都是作者最不喜欢的。
地理信息系统(Geographic Information System,GIS)是在20世纪60年代出现的,经过近40年的发展,已经产生了重要并且意义深远的成果和进步。从早期昂贵、基于主机(Host-based)的专业系统到今天进入平常百姓家的那些价格低廉、基于无线网络的移动与嵌入式GIS和GPS设备(手机和导航仪等),GIS的发展方向一直趋向于让普通用户都能从无处不在的地理信息中受益。当然,这既符合IT技术的发展潮流,更暗合GIS的使命——更好地改变了我们的生产、生活和工作方式,而WebGIS则是这一发展潮流的最好注脚之一。
Internet 网络是人类历史上最重要和最伟大的发明之一,它是人类通信与交流方式的一次重大革命。Internet 网络的出现和发展,使得全球范围内的信息共享和快速传播成为可能,从而极大地增强了信息的时效性,并提高了其可靠性。也正是有了 Internet,我们生活的星球才能被称为“地球村”,网络已经对技术、科学和整个社会产生了深刻的影响,这个重要性无论怎样强调都不为过。
而作为一种与位置相关的信息管理系统,GIS也借助了日益发展的网络技术,诞生出了所谓的“网络GIS”和WebGIS等概念,“互联网逐渐将GIS的各种应用整合在一起,独立的GIS将逐渐消失”,如今的GIS已经更加离不开网络这一传播媒介。但请读者注意:网络GIS与WebGIS并不能简单地画上等号,后者只是前者的一个子集。
抛开WebGIS这一概念名词不谈,对于GIS开发人员而言,WebGIS开发在本质上无非是编写一种交互方式较为特殊的Web应用程序,但随着Web 2.0概念的兴起,Ajax、RIA框架、SOA、SOAP、GIS服务、RESTful服务和Mashup等名词已经让许多GIS学习者眼花缭乱。现在,WebGIS学习的复杂性不在于其内容的深浅,而是出现了太多的“枝蔓”,挡住了我们前进的道路。
在第 1 章中,我们将为读者梳理一番 WebGIS 软硬件基础的历史,介绍互联网的历史和分布式计算、通信协议、网络GIS概念、WebGIS的定义与实质、主要的WebGIS服务器和开发路线。只有了解它们,我们才能从日益严密的Web应用程序封装中窥见其本来面目。我们将让读者意识到,在这些名词背后,都隐藏着一个越来越被读者忽视的本质——HTTP请求/响应模型。在阅读完这一章之后,你将了解到所谓的WebGIS,无非就是Web+GIS而已,如图1-1所示,但这两者结合产生的力量,远远超过了单体的能量。
图1-1 WebGIS= Web + GIS