gogogo
管理员
管理员
  • UID25
  • 粉丝0
  • 关注0
  • 发帖数1384
阅读:5232回复:1

WebGIS开发者入门

楼主#
更多 发布于:2020-10-22 14:56


开发方向

最近,地理信息系统(GIS)的开发与应用越来越多的倾向于Web端,Web端开发确实比以C# ArcGIS Engine为代表的C/S开发更具优势,而且可以通过H5轻松实现跨平台。做过进入这个行业有一段时间的人,想起自己在学校时,没有人指导开发,自己苦苦摸索,却事倍功半。写下这篇博文给那些在校的GIS学生介绍一下WebGIS开发的大致路线和入门知识吧。
首先,WebGIS的开发平台主要有以下四类
  1. 商业平台
ArcGIS、超图、MapGIS等商业平台,其中以ArcGIS JS开发应用最广,性能也稳定,学习资料和代码也比较多。
  1. 开源平台
开源WebGIS平台很多,如OpenLayers、Leaflet等,其中OpenLayers的应用最为广泛,功能也最强大,而且一直在更新,使用者众多。比较有意思的是,在之前打开MapGIS的Web开发代码,居然发现了OpenLayers的JS文件。
  1. 百度、高德等地图平台
这些平台虽然不是为GIS而生,但是其定期更新的地图,省去了开发时搭建地图服务器的麻烦。很多非GIS开发人员也能轻易开发。对于个人或者非商业的应用是免费的,实际开发过程中,也有很多不侧重与GIS开发的公司在进行百度等地图平台的开发。
  1. 基于WebGL或其他图形语言的底层开发
前面三个说的都是二次开发,有一次强调自己品牌和地位的公司会基于WebGL或其他技术进行更底层的图形发开,对开发人员的GIS知识和算法准备有很高要求。开发周期长,前期投入较多,进行此类开发的人员较少。


开发技能掌握

如果你是一个想进入WebGIS开发的人员,或者在书本前徘徊迷茫的GIS学生,下面就是你做WebGIS开发需要准备的技能


知识结构

进行WebGIS开发之前,你一定要有这样的清晰的模型,WebGIS是如何工作的,地图是如何展示出来的。你需要了解以下名词和它们之间的关系:
  1. 地图服务器
  2. 地图服务(OGC、WMS、WFS、TMS、WMTS)
  3. GeoJson
  4. 地图切片
  5. 后台


开发基础

  1. Html5、CSS、JavaScript——Web开发共同基础
  2. ES6——JavaScript的新一代标准,新版本的WebGIS平台多依赖于ES6
  3. 基于一定的后台开发的经验或知识,毕竟要从html页面去后台查询空间数据信息


ArcGIS等商业平台开发入门

虽然商业平台比较多,这里就说应用最广的ArcGIS JS开发,写文章时,最新版本是ArcGIS API for JavaScript4.8。
ArcGIS Desktop基础操作——会数据简单处理,坐标系转换
ArcGIS Server——可以发布各类地图服务
ArcGIS API for JavaScript可以调用各类地图服务
可以使用ArcGIS Server发布空间处理服务(更高级要求)


OpenLayers等开源平台开发

GeoServer——类似于ArcGIS Server,开源地图服务器,一般与开源地图平台搭配
Udig——用来配置GeoServer中地图样式
PostgreSQL与PostGIS——开源空间数据库,存储数据,简单分析


高德等地图平台

如果你会了前面两类开发,百度、高德、腾讯地图等也不觉得有什么难度了。会JavaScript语言,对照着官方的开发文档和教程,很容易就写出来了。


总结

基于WebGL或其他图形语言的底层开发不适合GIS新人去做,需要你工作几年,自己总结出一些东西,再做的话,做出来的更实用,开发的过程中也就知道哪里应该优化。
GIS开发人员,不明白时,开发文档和官方Demo是最好的老师。经常遇到很多人,官方开发文档和Demo有的东西,还去问别人,这样做,没有人愿意给你讲太多的。
gogogo
管理员
管理员
  • UID25
  • 粉丝0
  • 关注0
  • 发帖数1384
沙发#
发布于:2020-10-22 14:56
游客


返回顶部