Как мне развить свои навыки программирования в ГИС?


30

Я хотел бы развить свои навыки программирования ГИС, с чего мне начать? Люди говорят, изучают C ++ или Python, но где я могу узнать это в географическом контексте? Учебники или что-нибудь еще будут очень полезны, как и любая информация о языках / программах для использования.


2
У вас уже есть знания в области программирования? Вы должны хотя бы знать основы, прежде чем попробовать себя в не столь тривиальной области ГИС.
Подземье

Начните с arcgis python ... он прост в использовании. Многие образцы доступны.

Я программист и знаю Delphi & D2k. Я хотел бы изучить программирование ГИС, как это возможно через онлайн. пожалуйста, помогите

Это не ответ. Если вы хотите задать вопрос, задайте вопрос. Если вы хотите ответить на этот вопрос, пометьте его как избранное и проверьте снова.
Бранко

Ответы:


18

Есть одно сообщение в блоге от Михалиса Авраама, в котором объясняются основные навыки для успеха в ГИС-карьере, которые, я думаю, хорошо написаны. Вы, вероятно, найдете много хороших советов там.

ОБНОВЛЕНИЕ: к сожалению, верхние ссылки мертвы, но похожая тема может быть найдена в одной исследовательской статье Определение требований к навыкам для позиций ГИС: контент-анализ объявлений о работе


1
Ссылки Michalis Avraam выше не работают?
Умар Юсуф

@UmarYusuf спасибо за уведомление о мертвых ссылках. Я обновил одну ссылку с похожей темой.
Марио Милер


13

Мне нравится Python Криса Гаррарда для материалов курса геообработки. http://www.gis.usu.edu/~chrisg/python/2009/ Лично я считаю, что программные манипуляции с OGR / GDAL необходимы.

Что касается поиска наиболее подходящего для вас, рассмотрите программное обеспечение или геостек, в котором вы хотите быть наиболее опытным (например, ArcGIS, QGIS, PostGIS-GeoServer-OpenLayers), а затем выберите язык (языки) программирования, который наилучшим образом поддерживает ваш выбор. Это можно обнаружить, проверив язык связанного API или другие учебники по настройке. Существует множество учебных ресурсов по онлайн-программированию, и веб-поиск вашего предпочтительного программного пакета + язык + "учебник" поможет вам в этом.

Я также верю в «обучение на практике». Например, создайте простую карту с помощью Javascript и Google Maps и попробуйте добавить геометрию, стилизацию, пользовательский интерфейс и интересный анализ. Работайте, чтобы увидеть, что возможно, а что нет. При создании вам потребуются более сложные инструменты для настройки, и это будет указывать на соответствующие платформы, языки и библиотеки.


10

Не начинайте с C ++ и ГИС, не изучив сначала разработку программного обеспечения. Это слишком много.

Python - хорошее место для старта, независимо от того, с какой ГИС-платформой вы будете работать позже. Существует множество книг, веб-сайтов и учебных материалов, и многие колледжи используют Python в качестве введения, прежде чем переходить к языкам программирования для тяжелых условий работы, таким как c ++ и java.

Мои любимые ресурсы по питону - вне этого сайта - это Show Me Do , Think Python , Stack Overflow и списки рассылки используемого мной программного обеспечения (в основном GDAL и ArcGIS).


7

Я смог выучить Python, усевшись с копией Learning Python от Lutz & Ascher (O'Reilly Press). В моем офисе используются продукты ESRI, поэтому, чтобы получить соединение с ArcGIS, я создал несколько моделей с помощью ESRI Model Builder и экспортировал их в Python. Тогда нужно было просто посмотреть на экспортированные скрипты Python, пролистать книгу и использовать интерактивную справочную систему ESRI по темам геообработки, чтобы лучше понять, как Python и ArcGIS работают вместе.


3

Очень мало колледжей / университетов, предлагающих курсы по программированию, связанные с ГИС. Я бы порекомендовал программу сертификатов ГИС для колледжа Элмхерст, в которой два (2) из ​​этих курсов являются частью их сертификата ГИС. Программа, связанная с программированием:

  1. ISG 100 GIS Программирование с помощью ArcObjects
  2. ISG 200 Реализация баз геоданных

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

Вся программа онлайн и у них есть выделенный ГИС Сервер. Они учат Python в основном.


2

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


И он рекомендует GeoTools в качестве набора инструментов - не то, чтобы мы чувствовали себя самодовольными или что-то в этом роде :-)
Ian Turton

2

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

Поскольку вы только начинаете, коллектор не может быть плохим выбором. Вы можете получить его менее чем за 300 долларов и разрабатывать, используя бесплатные «экспресс-» версии Visual Studio.

Если вы можете быть более конкретным, мы, возможно, поможем вам больше.


1

Виртуальный кампус ESRI предлагает пару коротких вводных курсов по использованию Python для сценариев в ArcGIS. Я думаю, что один из них бесплатный. Взятие одного из них было бы отличным способом проверить, готовы ли вы углубиться в это.


1

Пройдите через ArcMap, изучая основы обработки пространственных объектов. Когда вам удобно с операцией, попробуйте установить процесс с ModelBuilder. Конструктор моделей является эквивалентом Lego в мире ESRI. Это позволяет вам генерировать код Python. Этот код будет упрощен, но он будет работать.

WingIDE - это инструмент, который облегчает работу со скриптами Python, а также предоставляет вам предсказуемую среду для тестирования ваших скриптов. Откройте скрипт построения модели в выбранной вами IDE и поэкспериментируйте с ним.

Поскольку языки программирования идут, Python - низко висящий фрукт. Это возьмет вас от простого уровня и выше :-)


0

Я удивлен, что PyQGIS Developer Cookbook еще не существует. Я считаю это необходимым для сопоставления моих старых навыков ГИС и моих новых навыков Python, особенно без доступа к ArcGIS сейчас. Если вы в большей степени ориентированы на ArcGIS, то для вас гораздо больше ресурсов .

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

Если вы не обладаете достаточным опытом в каком-либо другом языке (C # для ArcGIS, C ++ для ГИС с открытым исходным кодом), начните с Python и изучите другие языки позже. Большинство связанных с ГИС функций должны иметь сходный синтаксис и использование в Python и этих языках, поэтому изучение их с предыдущими знаниями Python не должно быть таким сложным.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.