Як я розвиваю свої навички програмування ГІС?


30

Я б хотів розвинути свої навички програмування ГІС, з чого почати? Люди кажуть, що вивчайте C ++ або Python, але де я можу це навчитися в географічному контексті? Підручники чи будь-що інше було б дуже корисно, як і будь-яка інформація про мови / програми, якими слід користуватися.


2
Чи маєте ви ще якісь знання з програмування? Ви повинні принаймні знати основи, перш ніж спробувати себе в не дуже тривіальній галузі ГІС.
underdark

Почніть з arcgis python ... це просто у використанні. Є багато зразків.

Я програміст, і я знаю delphi & D2k. Я хотів би вивчити програмування ГІС, як це можливо через Інтернет. будь ласка, допоможіть

Це не відповідь. Якщо ви хочете задати питання, задайте питання. Якщо ви хочете слідувати за цим питанням, позначте його як улюблене і перевірте ще раз.
Бранко

Відповіді:


18

Є одна публікація в блозі від Міхаліса Авраама, яка пояснює необхідні навички для досягнення успіху в кар’єрі ГІС, які, на мою думку, добре написані. Напевно ви знайдете там багато хороших порад.

ОНОВЛЕННЯ: на жаль, верхні посилання є мертвими, але подібну тему можна знайти в одній статті дослідження Ідентифікація вимог до навичок для GIS позицій: Аналіз вмісту оголошень про роботу


1
Міхаліс Авраам вище посилання порушені?
Умар Юсуф

@UmarYusuf дякує за повідомлення про мертві посилання. Я оновив одне посилання з подібною темою.
Маріо Мілер


13

Мені подобається Python Кріса Гаррарда за курси геопроцедури. http://www.gis.usu.edu/~chrisg/python/2009/ Особисто я вважаю програмним маніпулюванням OGR / GDAL незамінним.

Що стосується пошуку найбільш підходящого для вас, розгляньте програмне забезпечення або геостак, який ви хочете бути найбільш досвідченим (наприклад, ArcGIS, QGIS, PostGIS-GeoServer-OpenLayers), а потім виберіть мову програмування, який найкраще підтримує ваш вибір. Це можна дізнатись, перевіривши мову пов’язаного API чи інших навчальних посібників із налаштування. Існує велика кількість навчальних ресурсів для програмування в Інтернеті, і веб-пошук вашого вподобаного програмного пакета + мова + "підручник" допоможе вам прокрутити.

Я також вірю в "навчання ділом". Наприклад, викрутіть просту карту за допомогою Javascript та Google Maps і спробуйте додати геометрію, стиль, інтерфейс користувача та аналітики, що цікавлять вас. Працюйте, щоб побачити, що можливо, а що ні. Коли ви будуєте, вам знадобляться більш досконалі інструменти для налаштування, і це вказуватиме на відповідні плафтформи, мови та бібліотеки.


10

Не починайте з C ++ та GIS, не спочатку вивчаючи розробку програмного забезпечення. Це просто забагато.

Python - це гарне місце для початку незалежно від того, на якій GIS-платформі ви підете пізніше. Доступно багато книг, веб-сайтів та навчальних матеріалів, і багато коледжів застосовують python як вступ до переходу на важкі мови програмування, такі як c ++ та java.

Мої улюблені ресурси python - за межами цього веб-сайту - це Show Me Do , Think Python , Переповнення стека та списки розсилки програмного забезпечення, яке я використовую (переважно GDAL та ArcGIS).


7

Мені вдалося пізнати Python, сідаючи з копією Learning Python від Lutz & Ascher (O'Reilly Press). У моєму офісі використовуються продукти ESRI, тому для підключення до ArcGIS я створив кілька моделей за допомогою Model Builder ESRI і експортував їх до Python. Тоді було лише розглянути експортовані сценарії python, перекопати книгу та використати он-лайн довідкову систему ESRI для тем з питань геообробки, щоб отримати краще уявлення про те, як python та ArcGIS працюють разом.


3

Коледжів / університетів, які пропонують курси програмування, пов'язані з ГІС, дуже мало. Я рекомендував би програму сертифікації ГІС коледжу Elmhurst College, яка має два (2) з цих курсів, як частина їх GIS Cert. Програма, пов'язана з обома програмами:

  1. Програмування ISG 100 GIS з ArcObjects
  2. ISG 200 Впровадження баз геоданих

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

Вся програма в Інтернеті, і у них є виділений GIS-сервер. В основному навчають Python.


2

Програмування в ГІС - це один із наборів навичок, перелічених у Моделі компетенцій геопросторових технологій (GTCM), яка щойно вийшла та включає деякі додаткові набори навичок, які можуть бути головним орієнтиром для цього: http://www.careeronestop.org/ компетенціямодель / blockModel.aspx? tier_id = 4 & block_id = 708 & GEO = Y


І він рекомендує GeoTools як набір інструментів - не те, щоб ми відчували себе самодовольно :-)
Ian Turton

2

Відповідь дуже залежить від системи, яку ви використовуєте, і на якій ОС вона працює. Я в першу чергу програмую Manifold в Windows або веб-додатках з Manifold на бекенді, тому я можу вибрати будь-яку мову .NET. C # - це мій особистий вибір, тому що більшість прикладів та навчальних посібників, які ви знайдете в Інтернеті, будуть в C # (принаймні для .NET).

Оскільки ви тільки починаєте, колектор може бути не поганим вибором. Ви можете отримати його за менше 300 доларів і розробляти, використовуючи безкоштовні версії “Express” Visual Studio.

Якщо ви можете бути трохи більш конкретними, ми, ймовірно, можемо вам більше допомогти.


1

ESRI Virtual Campus пропонує кілька коротких вступних курсів з використання Python для сценаріїв в ArcGIS. Я думаю, що одна з них безкоштовна. Взяти його було б чудовим способом зрозуміти, чи це ви готові зануритися глибше.


1

Проробіть свій шлях через ArcMap, вивчаючи основи обробки просторових об'єктів. Коли вам комфортно працювати, спробуйте встановити процес з ModelBuilder. Конструктор моделей - еквівалент лего у світі ESRI. Це дозволяє вам генерувати код python. Цей код буде спрощено, але він працюватиме.

WingIDE - це інструмент, який дозволяє легко обробляти сценарії python, а також надає передбачувану середу для тестування сценаріїв. Відкрийте сценарій конструктора моделі в обраному вами IDE і пограйте з ним.

По мірі мов програмування Python є низько вищим фруктом. Це забере вас від простого рівня і вище :-)


0

Я здивований, кулінарної програми PyQGIS Developer ще не існує. Я вважаю його незамінним для відповідності моїм старим навичкам ГІС та моїм новим навичкам Python, особливо не маючи доступу до ArcGIS зараз. Якщо ви більше орієнтовані на ArcGIS, то для вас є набагато більше ресурсів .

На StackOverflow є список навчальних програм Python. Я особисто віддаю перевагу Checkio .

Якщо у вас вже є сильний досвід роботи з якоюсь іншою мовою (C # для ArcGIS, C ++ для GIS з відкритим кодом), почніть з Python та пізнайте інші мови пізніше. Більшість функцій, пов'язаних з ГІС, повинні мати подібний синтаксис та використання в Python та цих мовах, тому вивчити їх за попередніми знаннями Python не повинно бути таким важким.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.