Answers:
Michalis Avraam的一篇博客文章解释了成功实现GIS事业的基本技能,我认为写得很好。您可能会在这里找到很多好的建议。
更新:不幸的是,上层链接已消失,但可以在一篇研究文章中找到类似的主题:确定GIS职位的技能要求:职位广告的内容分析
我喜欢Chris Garrard的《地理处理Python》课程材料。http://www.gis.usu.edu/~chrisg/python/2009/就个人而言,我发现OGR / GDAL的程序化操作是必不可少的。
为了找到最适合您的软件,请考虑您希望最擅长的软件或地理堆栈(例如ArcGIS,QGIS,PostGIS-GeoServer-OpenLayers),然后选择最能支持您选择的编程语言。可以通过签出相关API的语言或其他自定义教程来发现这一点。存在大量的在线编程学习资源,并且对您首选的软件包+语言+“教程”的网络搜索将使您滚动学习。
我也相信“边做边学”。例如,使用Javascript和Google Maps绘制一张简单的地图,然后尝试添加几何图形,样式,用户界面和感兴趣的分析。努力看看有什么可能,什么没有。在构建时,您将需要更复杂的工具来进行自定义,这将指向相关的标签,语言和库。
在没有先学习软件开发之前,不要从C ++ 和 GIS开始。太多了
无论以后使用什么GIS平台,Python都是一个不错的起点。有很多书籍,网站和培训材料可供使用,许多大学在继续使用诸如c ++和java之类的繁重编程语言之前,都使用python作为介绍。
在此站点之外,我最喜欢的python资源是Show Me Do,Think Python,Stack Overflow和我使用的软件(主要是GDAL和ArcGIS)的邮件列表。
很少有大学提供与GIS相关的编程课程。我会推荐Elmhurst大学GIS证书计划,该计划中有两(2)门课程是其GIS证书的一部分。程序,两者都与编程有关:
ISG 200实施地理数据库
整个程序都是在线的,并且具有专用的GIS服务器。他们主要教Python。
GIS中的编程是地理空间技术能力模型(GTCM)中列出的技能之一,该模型刚刚发布,其中包括一些其他技能集,它们可能是对此的最终参考来源:http : //www.careeronestop.org/ skillncymodel / blockModel.aspx?tier_id = 4&block_id = 708&GEO = Y
令我感到惊讶的是PyQGIS开发人员手册还不存在。我发现将旧的GIS技能与新的Python技能相匹配是必不可少的,尤其是现在无法访问ArcGIS。如果您更注重ArcGIS,那么将为您提供更多资源。
StackOverflow上有一个Python培训程序列表。我个人更喜欢Checkio。
除非您已经具有其他语言的丰富背景知识(C#for ArcGIS,C ++ for opensource GIS),否则请从Python开始并稍后学习其他语言。大多数与GIS相关的功能在Python和这些语言中应具有相似的语法和用法,因此,使用Python的先验知识学习它们并不难。