GISer如何突破二次开发瓶颈

年初时,我写的《一个GISer的使命》那篇文章中,提出了GISer的技术提升路径可以分为四个大的阶段:

  • 阶段一,能使用商业GIS软件去解决问题。
  • 阶段二,能使用开源GIS软件去解决问题。
  • 阶段三,有能力去解决开源GIS中的问题。
  • 阶段四,有能力去解决GIS行业前沿问题。

在阶段一、阶段二中,我们属于GIS二次开发人员,在阶段三、阶段四中我们开始慢慢转向GIS底层开发人员。

这种转变不是天天做项目就会自然的实现的,天天做项目会让我们成为一名GIS二次开发老司机,但永远不会成为GIS底层开发的赛车手,他们之间差的是对某些底层专业知识技能的”刻意练习“。

我们今天就来讨论一下,如何从一个GIS二次开发人员转变为GIS底层开发人员。

被忽视的GIS底层原理

前段时间学了一个大神的计算机图形学课程。课程开篇就说:我们不会去讲OpenGL API,我们只会讲计算机图形学的原理和算法,原理和算法学会了再去看API什么的,那都太简单了,甚至你自己都可以写一套渲染引擎出来。

学完那个课程后我最大的体会就是:原来计算机里的所有东西,背后都是数学。也看到了在计算机领域,只有能深入讲到数学层面的东西才是真正的实现原理。

记得之前所在的公司下任务让员工申请专利,有个同事写了个GIS的专利,结果被打了回来,理由是实现方法太依赖于ArcGIS软件。

这可能从侧面反映出了GIS开发普遍存在的问题,就是更关注如何使用各种的GIS软件和GIS开发框架,却忽视了GIS底层原理的重要性。

这同样也是国内开设GIS专业的高校普遍存在的问题,高校里都在讲GIS理论、GIS软件使用、GIS二次开发,但很少讲GIS底层的实现原理。

GIS开发需要逆势而上

吴军在《硅谷来信》一书中提到过一个高势能专业的概念。所谓高势能的专业,就是指那些相对难学,而又相对是其他专业的基础的专业。比如数学专业相对计算机专业就是高势能的,计算机专业相对GIS专业是高势能的,从高势能转到低势能的专业相对好转,但反过来会比较困难。

GIS开发除了要掌握GIS的原理外,还要夯实计算机基础,因为计算机是GIS的实现手段,计算机基础不扎实是做不好GIS的。

GIS底层开发要掌握的技能

下面是我认为GISer需要进一步加强的底层技能

1、GIS基础知识

  • WebGIS实现原理
  • GIS常用空间分析算法实现原理

2、计算机基础知识

  • 数据结构、算法。
  • 精通一门开发语言。这里的精通不仅包括熟练度,还包括开发语言的实现原理。

套用知乎上一位答主的话说就是:GISer要有不低于计算机专业人员对计算机的理解能力。简单点说就是要达到计算机专业科班出身的水平。

3、数学基础知识

我的原则是急用现学。数学这个东西确实比较枯燥,当你不知道这个东西有什么用时,内心会很抗拒,学起来就很费劲;当你发现要学的新技术中使用到它并且死活绕不开时,内心就不再抗拒,甚至有了浓厚的兴趣,再学起来会容易很多。

总结

  1. GIS二次开发走的是全栈开发路线,啥都会一些,啥都不精通,路越走越窄,工作5年后薪资上会慢慢遇到瓶颈。
  2. 要突破这种瓶颈需要逆势而上把计算机的专业知识吃透,把GIS底层原理吃透,让自己达到计算机专业开发水平,同时又精通GIS底层实现原理。
  3. 这两项突破后,你就具备了GIS底层的开发能力,会成为HR口中天天嚷着不好招的那种GIS稀缺人才。

最后

种一棵树最好的时间是十年前,其次是现在!



原文地址:http://gisarmory.xyz/blog/index.html?blog=GISerRacer

欢迎关注《GIS兵器库

本文章采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名《GIS兵器库》(包含链接: http://gisarmory.xyz/blog/),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
系统根据B/S,即所谓的电脑浏览器/网络服务器方式,运用Java技术性,挑选MySQL作为后台系统。系统主要包含对客服聊天管理、字典表管理、公告信息管理、金融工具管理、金融工具收藏管理、金融工具银行卡管理、借款管理、理财产品管理、理财产品收藏管理、理财产品银行卡管理、理财银行卡信息管理、银行卡管理、存款管理、银行卡记录管理、取款管理、转账管理、用户管理、员工管理等功能模块。 文中重点介绍了银行管理的专业技术发展背景和发展状况,随后遵照软件传统式研发流程,最先挑选适用思维和语言软件开发平台,依据需求分析报告模块和设计数据库结构,再根据系统功能模块的设计制作系统功能模块图、流程表和E-R图。随后设计架构以及编写代码,并实现系统能模块。最终基本完成系统检测和功能测试。结果显示,该系统能够实现所需要的作用,工作状态没有明显缺陷。 系统登录功能是程序必不可少的功能,在登录页面必填的数据有两项,一项就是账号,另一项数据就是密码,当管理员正确填写并提交这二者数据之后,管理员就可以进入系统后台功能操作区。进入银行卡列表,管理员可以进行查看列表、模糊搜索以及相关维护等操作。用户进入系统可以查看公告和模糊搜索公告信息、也可以进行公告维护操作。理财产品管理页面,管理员可以进行查看列表、模糊搜索以及相关维护等操作。产品类型管理页面,此页面提供给管理员的功能有:新增产品类型,修改产品类型,删除产品类型。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值