Gostaria de desenvolver minhas habilidades de programação GIS, por onde começar? As pessoas dizem que aprendem C ++ ou Python, mas onde posso aprender isso em um contexto geográfico? Tutoriais ou qualquer outra coisa seria muito útil, assim como qualquer informação sobre idiomas / programas a serem usados.
python
c++
references
Vai
fonte
fonte
Respostas:
Há uma postagem no blog de Michalis Avraam que explica habilidades essenciais para ter sucesso na carreira de GIS, que eu acho que está bem escrita. Você provavelmente encontrará muitos bons conselhos por lá.
ATUALIZAÇÃO: infelizmente, os links superiores estão mortos, mas um tópico semelhante pode ser encontrado em um artigo de pesquisa Identificando requisitos de habilidades para posições GIS: uma análise de conteúdo de anúncios de emprego
fonte
Gosto dos materiais do curso Python for Geoprocessing, de Chris Garrard. http://www.gis.usu.edu/~chrisg/python/2009/ Pessoalmente, considero indispensável a manipulação programática do OGR / GDAL.
Com relação a encontrar o melhor ajuste para você, considere o software ou o geostack no qual você deseja ser mais especialista (como ArcGIS, QGIS, PostGIS-GeoServer-OpenLayers) e escolha a (s) linguagem (s) de programação que melhor suportam sua escolha. Isso pode ser descoberto ao verificar o idioma da API associada ou outros tutoriais de personalização. Existe uma grande quantidade de recursos de aprendizado de programação on-line, e uma pesquisa na web do seu pacote de software preferido + idioma + "tutorial" o ajudará.
Eu também acredito em "aprender fazendo". Por exemplo, crie um mapa simples com Javascript e Google Maps e tente adicionar geometria, estilo, interface do usuário e análises de interesse. Trabalhe para ver o que é possível e o que não é. À medida que você cria, você precisará de ferramentas mais sofisticadas para personalização, e isso apontará para plaftorms, idiomas e bibliotecas relevantes.
fonte
Não comece com C ++ e GIS sem aprender primeiro o desenvolvimento de software. É demais.
O Python é um bom lugar para começar, independentemente da plataforma GIS usada posteriormente. Existem muitos livros, sites e materiais de treinamento disponíveis e muitas faculdades usam o python como introdução antes de prosseguir para as linguagens de programação pesadas, como c ++ e java.
Meus recursos python favoritos - fora deste site - são Show Me Do , Think Python , Stack Overflow e as listas de discussão do software que eu uso (principalmente GDAL e ArcGIS).
fonte
Eu pude aprender Python sentando-me com uma cópia do Learning Python de Lutz & Ascher (O'Reilly Press). Meu escritório usa produtos ESRI, portanto, para obter a conexão com o ArcGIS, criei vários modelos usando o Model Builder da ESRI e os exportei para Python. Depois, foi apenas uma questão de examinar os scripts python exportados, pesquisar o livro e usar o sistema de ajuda on-line da ESRI para os tópicos de geoprocessamento para ter uma idéia melhor de como python e ArcGIS trabalham juntos.
fonte
Existem muito poucas faculdades / universidades que oferecem cursos de programação relacionados ao GIS. Eu recomendaria o Programa de Certificação GIS da Elmhurst College, que possui dois (2) desses cursos como parte de seu Certificado GIS. Programa, ambos relacionados à programação:
ISG 200 Implementando Geodatabases
http://public.elmhurst.edu/adult/gis
Todo o programa está online e eles têm um servidor GIS dedicado. Eles ensinam Python principalmente.
fonte
A programação no GIS é um dos conjuntos de habilidades listados no Modelo de Competência em Tecnologia Geoespacial (GTCM), que acaba de ser lançado e inclui alguns conjuntos de habilidades adicionais que podem ser a melhor fonte de referência para isso: http://www.careeronestop.org/ competencymodel / blockModel.aspx? tier_id = 4 & block_id = 708 & GEO = Y
fonte
A resposta depende muito do sistema que você está usando e em qual SO ele é executado. Estou programando principalmente o Manifold no Windows ou aplicativos baseados na Web com o Manifold no back-end, para que eu possa escolher qualquer idioma do .NET. C # é minha escolha pessoal, porque a maioria dos exemplos e tutoriais que você encontrará na Web estará em C # (pelo menos para .NET).
Como você está apenas começando, o Manifold pode não ser uma má escolha. Você pode adquiri-lo por menos de US $ 300 e desenvolver usando as versões gratuitas 'Express' do Visual Studio.
Se você pode ser um pouco mais específico, provavelmente podemos ajudá-lo mais.
fonte
O ESRI Virtual Campus oferece alguns cursos introdutórios curtos sobre o uso de Python para scripts no ArcGIS. Eu acho que um deles é grátis. Tomar um seria uma ótima maneira de ver se isso é algo em que você está pronto para se aprofundar.
fonte
Faça o seu caminho através do ArcMap, aprendendo o básico sobre manipulação de objetos espaciais. Quando você estiver confortável com uma operação, tente estabelecer o processo com o ModelBuilder. O Model Builder é o equivalente do lego no mundo da ESRI. Isso possibilita a geração de código python. Este código será simplificado, mas funcionará.
O WingIDE é uma ferramenta que facilita o manuseio de scripts python, além de fornecer um ambiente previsível para testar seus scripts. Abra o script do construtor de modelos no IDE de sua escolha e brinque com ele.
Conforme as linguagens de programação, o Python é um fruto pendente. Levará você a partir do nível simples e acima :-)
fonte
Estou surpreso que o livro de receitas do desenvolvedor do PyQGIS ainda não esteja lá. Considero indispensável combinar minhas antigas habilidades em GIS e minhas novas habilidades em Python, especialmente sem ter acesso ao ArcGIS agora. Se você é mais orientado ao ArcGIS, há muito mais recursos para você.
Há uma lista de programas de treinamento Python no StackOverflow. Eu pessoalmente prefiro Checkio .
A menos que você já tenha uma sólida experiência em alguma outra linguagem (C # para ArcGIS, C ++ para GIS de código aberto), inicie com Python e aprenda outras línguas posteriormente. A maioria das funções relacionadas ao GIS deve ter sintaxe e uso semelhantes no Python e nessas linguagens; portanto, aprendê-las com conhecimento prévio do Python não deve ser tão difícil.
fonte