Come posso sviluppare le mie capacità di programmazione GIS?


30

Vorrei sviluppare le mie capacità di programmazione GIS, da dove comincio? Le persone dicono di imparare C ++ o Python ma dove posso imparare questo in un contesto geografico? Tutorial o altro sarebbe molto utile, così come qualsiasi informazione su lingue / programmi da usare.


2
Hai qualche conoscenza di programmazione ancora? Dovresti almeno conoscere le basi prima di provare te stesso nel campo non così banale di GIS.
underdark

Inizia con Arcgis Python ... è facile da usare. Sono disponibili molti campioni.

sono programmatore e conosco Delphi e D2k. Mi piacerebbe studiare la programmazione GIS come possibile attraverso online. per favore aiuto

Questa non è una risposta Se vuoi fare una domanda, fai una domanda. Se vuoi seguire questa domanda, contrassegnala come preferita e ricontrolla.
Branco,

Risposte:


18

C'è un post sul blog di Michalis Avraam che spiega le abilità essenziali per avere successo nella carriera GIS che penso sia ben scritto. Probabilmente troverai molti buoni consigli lì.

AGGIORNAMENTO: sfortunatamente i link superiori sono morti ma un argomento simile può essere trovato in un articolo di ricerca Identificazione dei requisiti di abilità per le posizioni GIS: un'analisi del contenuto degli annunci di lavoro


1
I collegamenti Michalis Avraam sopra sono rotti?
Umar Yusuf,

@UmarYusuf grazie per aver avvisato di collegamenti non funzionanti. Ho aggiornato un link con argomento simile.
Mario Miler,

Ecco un URL al post del blog di Michalis Avraam - dusk.geo.orst.edu/gis/PPTs/essential_skills.pdf
birdybird03

13

Mi piacciono i materiali del corso Python for Geoprocessing di Chris Garrard. http://www.gis.usu.edu/~chrisg/python/2009/ Personalmente, trovo indispensabile la manipolazione programmatica di OGR / GDAL.

Per quanto riguarda la ricerca della soluzione più adatta a te, considera il software o il geostack in cui desideri essere più esperto (come ArcGIS, QGIS, PostGIS-GeoServer-OpenLayers), quindi scegli i linguaggi di programmazione che meglio supportano la tua scelta. Sarà rilevabile verificando la lingua dell'API associata o altri tutorial di personalizzazione. Esistono molte risorse di apprendimento della programmazione online e una ricerca web del tuo pacchetto software preferito + lingua + "tutorial" ti farà girare.

Credo anche nell '"imparare facendo". Ad esempio, avvia una semplice mappa con Javascript e Google Maps e prova ad aggiungere geometria, stile, interfaccia utente e analisi di interesse. Lavora per vedere cosa è possibile e cosa no. Man mano che costruisci, avrai bisogno di strumenti più sofisticati per la personalizzazione, e questo indicherà plaftorm, linguaggi e librerie pertinenti.


10

Non iniziare con C ++ e GIS senza prima imparare lo sviluppo del software. È troppo.

Python è un buon punto di partenza, indipendentemente da quale piattaforma GIS segui in seguito. Ci sono molti libri, siti Web e materiali di formazione disponibili e molti college usano python come introduzione prima di passare ai linguaggi di programmazione pesanti, come c ++ e java.

Le mie risorse preferite di Python - al di fuori di questo sito - sono Show Me Do , Think Python , Stack Overflow e le mailing list del software che utilizzo (principalmente GDAL e ArcGIS).


7

Sono stato in grado di imparare Python sedendomi con una copia di Learning Python di Lutz & Ascher (O'Reilly Press). Il mio ufficio utilizza i prodotti ESRI, quindi per ottenere la connessione con ArcGIS, ho creato diversi modelli utilizzando Model Builder di ESRI e li ho esportati in Python. Quindi si trattava solo di esaminare gli script Python esportati, scavare nel libro e utilizzare il sistema di aiuto in linea di ESRI per gli argomenti di geoprocessing per avere un'idea migliore di come Python e ArcGIS lavorino insieme.


3

Esistono pochissimi college / università che offrono corsi di programmazione relativi ai GIS. Consiglierei il programma di certificazione GIS dell'Elmhurst College che prevede due (2) di questi corsi come parte del loro certificato GIS. Programma, entrambi relativi alla programmazione:

  1. Programmazione GIS ISG 100 con ArcObjects
  2. ISG 200 Implementazione di geodatabase

    http://public.elmhurst.edu/adult/gis

L'intero programma è online e hanno un server GIS dedicato. Insegnano principalmente a Python.



2

La risposta dipende molto dal sistema in uso e dal sistema operativo su cui viene eseguito. Sto principalmente programmando Manifold su Windows o app basate sul Web con Manifold sul back-end, quindi posso scegliere da qualsiasi linguaggio .NET. C # è una mia scelta personale perché la maggior parte degli esempi e tutorial che troverai sul web saranno in C # (almeno per .NET).

Da quando hai appena iniziato, Manifold potrebbe non essere una cattiva scelta. Puoi ottenerlo per meno di $ 300 e svilupparlo utilizzando le versioni gratuite "Express" di Visual Studio.

Se puoi essere un po 'più specifico, probabilmente possiamo aiutarti di più.


1

ESRI Virtual Campus offre un paio di brevi corsi introduttivi sull'uso di Python per lo scripting in ArcGIS. Penso che uno di questi sia gratuito. Prenderne uno sarebbe un ottimo modo per vedere se questo è qualcosa in cui sei pronto a immergerti più a fondo.


1

Fatti strada attraverso ArcMap imparando le basi della gestione degli oggetti spaziali. Quando si ha familiarità con un'operazione, provare a stabilire il processo con ModelBuilder. Il costruttore di modelli è l'equivalente di lego nel mondo ESRI. Ti consente di generare codice Python. Questo codice sarà semplificato ma funzionerà.

WingIDE è uno strumento che semplifica la gestione degli script Python, oltre a fornire un ambiente prevedibile per provare gli script. Apri lo script di creazione del modello nell'IDE che preferisci e gioca con esso.

A mano a mano che i linguaggi di programmazione vanno, Python è un frutto basso. Ti porterà dal livello semplice in su :-)


0

Sono sorpreso che il Cookbook per sviluppatori PyQGIS non sia ancora arrivato . Lo trovo indispensabile per abbinare le mie vecchie abilità GIS e le mie nuove abilità Python, soprattutto senza avere accesso ad ArcGIS ora. Se sei più orientato ad ArcGIS, allora ci sono molte più risorse per te.

C'è un elenco di programmi di allenamento Python su StackOverflow. Personalmente preferisco Checkio .

A meno che tu non abbia già una buona conoscenza di altre lingue (C # per ArcGIS, C ++ per GIS opensource), inizia con Python e impara altre lingue in un secondo momento. La maggior parte delle funzioni relative al GIS dovrebbe avere sintassi e utilizzo simili in Python e in quei linguaggi, quindi impararli con una conoscenza precedente di Python non dovrebbe essere così difficile.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.