如何成为一名企业真正需要的WebGIS开发工程师

前言

目前博主在郑州的一家GIS公司工作,从事农业大数据相关GIS项目开发。在郑州招聘一个WebGIS开发者不太容易,这可能和郑州的整体大环境有关系,没有几家靠得住的GIS公司。在公司也经常做技术面试,其中包括做一些WebGIS开发的人。也有一些感触,今天就不分享代码了,来谈谈这些感悟。


什么是WebGIS开发

经常遇到一些人说,"我做过GIS,我开发过高德地图",也有人说,“我想学习GIS开发,你指导我一下吧!”。凡此种种,不胜枚举。只会高德地图或百度地图开发,恐怕还算不上会GIS开发。任何一个前端开发者,看到百度或者高德的文档,都能轻松的实现一个地图demo。上周一个程序媛来面试WebGIS研发岗,研究生毕业,当看到简历时,我很惊异,简历上写的技术栈都很符合。但是面试时,才知道这个人,只用OpenLayers做过WMTS加载,做过放大缩小功能。

WebGIS开发不等于前端开发,WebGIS开发,首先要有足够的地理信息(GIS)的专业知识作为支撑,其次要掌握前后端的开发技术。了解地图数据,地图服务、了解地图的渲染。

WebGIS开发者要掌握的基础

在开发过程中,只要你掌握了以下技术,就基本能处理企业所有的WebGIS开发方便的需求:

基于OGC标准的地图服务

无论是ArcGIS,还是GeoServer,都是支持OGC标准的,支持发布符合OGC标准的WMS、WFS、WMTS、TMS的地图服务。做WebGIS开发,首先你要了解不同的地图服务,剩下的就是根据地图框架和应用场景去调用地图服务了。

坐标系

很多时候,周围的人都会问你是基于什么坐标系的,需要什么坐标系的数据,能不能转换?离开了坐标系,GIS开发也就失去了意义。作为WebGIS开发者,你必须要掌握常用的坐标系(我前面的博文也有提到过)。

主流地图框架

无论是Openlayers、Leaflet还是MapBox、Cesium,这些地图框架都有其优点与缺点,针对不同的应用场景,应该合理地选择不同类型的地图开发框架。

地图渲染

如果只了解,如何引用各地图引擎的库,复制代码,WebGIS开发者很快就会遇到瓶颈。只有你了解瓦片、矢量是如何在浏览器上进行渲染的,如何从投影坐标系或地理坐标系转到画布坐标系的,你才能开发出更优秀的系统,甚至于开发出自己的地图框架。

了解地图绘制的极限

虽然目前PC配置高了,浏览器可使用本地硬件加速了。但使用浏览器进行地图展示时,依然是有极限的。你是否了解,浏览器最大能同时绘制多少个栅格瓦片,能同时绘制多少个矢量点或线。只有了解这些,才能做出更好的用户体验。

结尾

前些天,我在网上看到,居然还有培训GIS开发的。说真的,我不觉得短时间能像Java开发那样培训出什么。WebGIS开发更多的只能依靠实践、依靠自己的探索。

 

WebGIS开发涉及多个方面的知识。以下是一些你可能需要学习的主要内容: 1. 前端开发:掌握HTML、CSS和JavaScript等前端技术,以构建用户界面和交互功能。 2. 后端开发:了解服务器端编程,如Python、Java或Node.js等,以实现数据库连接、数据处理和业务逻辑。 3. 地理信息系统基础知识:理解地理信息系统的基本概念、数据格式和空间分析方法。 4. 地图数据处理:掌握地图数据的获取、处理和存储,例如使用地理编码、地图瓦片和矢量数据等。 5. GIS开发框架和库:熟悉一些常用的GIS开发框架和库,如OpenLayers、Leaflet、ArcGIS API for JavaScript等。 6. 数据库技术:了解常用的关系型数据库(如MySQL、PostgreSQL)和NoSQL数据库(如MongoDB)等,以存储和管理地理数据。 7. 空间数据库:掌握空间数据库的使用,如PostGIS,以支持地理数据的空间查询与分析。 8. 数据可视化:学会使用图表库(如D3.js)或GIS专用可视化工具(如Mapbox Studio)进行地理数据可视化。 9. 服务端开发:了解Web服务的概念和技术,如RESTful API和WebGIS服务(如ArcGIS Server、GeoServer等)。 10. 安全性和性能优化:了解Web应用程序的安全性和性能优化策略,以保护地理数据和提高应用程序的响应速度。 这仅是一个基本的指南,你可以根据项目的需求和个人兴趣进一步深入学习相关技术。
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GIS开发者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值