Разрабатываю расширение ArcMap .Сетевые книги?[закрыто]

StackOverflow https://stackoverflow.com/questions/223649

  •  03-07-2019
  •  | 
  •  

Вопрос

У нас в отделе 2 новых ГИС-программиста / аналитика (новичок в программировании и ArcObjects), и я не чувствую, что я достаточно квалифицирован или у меня нет времени обучать их.Поэтому я ищу книги / руководства начального уровня, чтобы они могли использовать их в качестве справочных материалов.

Единственные книги, которые я могу найти по разработке расширений для ArcMap, написаны для VBA.

Помимо учебников по ESRI, которые вы получаете во время обучения в Redlands, знает ли кто-нибудь хорошие источники для обучения программированию на ArcObjects в .Net?

Спасибо

Это было полезно?

Решение

Пытаться учить программистов как ArcObjects, так и общей разработке программного обеспечения - действительно плохая идея.Прямо сейчас я борюсь с точно такой же проблемой.Вы рискуете получить двух разработчиков, которые не очень хорошо программируют ни ArcObjects, ни C #.

Сначала научите их быть хорошими разработчиками.Сделайте это, заставив их работать с кодом, отличным от ArcObjects (означает ли это высокоуровневый ArcGIS ADF или полноценные приложения, отличные от ГИС, решать вам).Убедитесь, что они понимают основы контекста приложения (веб, рабочий стол, средний уровень и т.д.).Это облегчит переход к ArcObjects.

Как только они освоят основы разработки программного обеспечения (в частности, наследование и ООП), познакомьте их с ArcObjects.Ссылка на VBA адекватна, но ее трудно абстрагировать от C # и современных инструментов.Талантливый разработчик может это сделать, но среднестатистический пользователь, вероятно, усвоит множество вредных привычек.

Лучше всего вам стиснуть зубы и отправить их на семинары для разработчиков.Иногда ESRI предлагает занятия в региональном офисе, который может быть более локальным для вас.В качестве альтернативы отправьте их на Саммит разработчиков или Конференцию пользователей весной и летом соответственно.Технические семинары немного продвинуты для полных новичков.Тем не менее, у worskhops можно многому научиться, если разработчики имеют самое базовое представление об ArcMap или ArcObjects.

Также, им нужно научиться использовать ArcMap.Единственная самая важная полезная вещь, которую они могут сделать для изучения ArcObjects, - это изучить ArcMap.Понимание того, как это работает в настольном продукте, часто может помочь понять, как использовать API.Простым примером является проецирование данных.В ArcMap вы должны использовать инструмент для явного проецирования данных.Простая "настройка" проекции не работает.Это переводится непосредственно в API, где вы должны вызвать метод "project" или использовать project GPTool.

Другие советы

Я согласен с общими настроениями, которые все здесь выражают (начните с программирования, начните с малого, особенно учитесь на примере / делании).

Гораздо проще заставить разработчиков изучить ArcObjects, чем заставить ГИС-аналитиков изучать программирование.Ваша задача (сделать и то, и другое) довольно сложна!

Тем не менее, если вам нужно с чего-то начать, я бы сначала обучил их основам C # или VB .NET (с помощью хорошего веб-руководства или платного курса), а затем продолжил бы это с ESRI .Обучение, ориентированное на сеть.Как я уже сказал в комментарии выше, учебные курсы ESRI меня не впечатлили.У меня есть опыт разработки программного обеспечения, и я смог изучить ArcObjects API за пару месяцев - по сравнению с двумя месяцами практических знаний, учебный курс был действительно базовым по материалу ArcObjects.Тем не менее, это может сработать для учеников, и вам, возможно, повезет с вашими наймами.

Я также хочу добавить, что вы определенно хотите сначала сделать акцент на обучении программному обеспечению, а API ArcObjects рассматривать как второстепенный аспект.Если это расширение ArcMap является продуктом, который вы намерены продавать людям и иметь в качестве клиентов, поймите, что поддержка, улучшение и сопровождение продукта, содержащего ошибки, является дорогостоящей операцией.Таким образом, любой доллар, потраченный на обучение программному обеспечению, окупит себя в долгосрочной перспективе.

Я бы даже посоветовал вам рассмотреть возможность найма разработчика программного обеспечения на контрактной основе в качестве гида и наставника, скажем, на шесть месяцев.

Насколько я помню, часть кода в Сети разработчиков ESRI теперь написана на C #, по крайней мере, это был мой основной источник кода на C # для ГИС, но книг, извините, нет.

Возможно, это было бы хорошим руководством для начинающих: http://www.pragprog.com/titles/sdgis/gis-for-web-developers

Если ваши сотрудники действительно новички в программировании, я бы начал с того, что попросил их изучить основы C # (или какого-либо другого .Сетевой язык, но C #, вероятно, подойдет новичкам) и хорошую практику программирования.Я бы предположил, что существуют существующие потоки stackoverflow, у которых были бы предложения по этому поводу.Я думаю, что глубокое понимание объектно-ориентированного программирования и знание синтаксиса языка, на котором будут приведены примеры, облегчат изучение ArcObjects.

Я действительно не знаком с книгами, не относящимися к ESRI, по ArcObjects.Однако я думаю, что их ресурсов достаточно для того, чтобы начать работу новичкам.В дополнение к учебникам по ESRI, я бы предложил начать с онлайн-ресурсов по адресу http://resources.esri.com/arcgisdesktop/dotnet/index.cfm

Другие рекомендации заключаются в том, чтобы научиться читать диаграммы объектной модели и использовать справку для изучения методов и свойств ArcObjects.Также поощряйте сотрудников пользоваться форумами пользователей ESRI.Там есть много знающих людей, готовых помочь с вопросами.

Практикуйтесь на собственном примере.

Мне было немного весело, когда я впервые начинал с простых, но интересных инструментов, таких как тот, который делал скриншот текущей карты и размещал его на сайте MediaWiki (всего одним щелчком мыши).Большая часть API кажется Глубокой магией, и я не раз натыкался на совершенно недокументированные функции, просматривая реестр Windows и делая обоснованные предположения (например, как создать пользовательский пункт меню в контекстном меню "Просмотр данных").

Я всегда учился намного лучше, выполняя простые, выполнимые задания, чем будучи вынужденным читать скучные, сухие книги.

В нем много силы, но я, конечно, медленно узнавал и понимал многое из этого.

Не делая это интересным, я думаю, разработчики пойдут на самоубийство с таким большим API.

Также не знаю о книгах, не относящихся к ESRI, посвященных ArcObjects.Что касается программного обеспечения ArcGIS Server и меня лично, я могу порекомендовать только Руководство администратора ArcGIS Server и разработчика (то есть AFAIK, включенное в установочное окно AGS) - там есть много примеров кода как для C #, так и для VB.Даже если вы не программируете с помощью AGS, примеры все равно могут быть полезны для обучения тому, как работает код ArcObjects.

Я полностью согласен с Джеймсом.

Как человек, который был в этой лодке 4 года назад, я твердо убежден, что вам следует начать с программирования на .NET, затем перейти на платформу ESRI и не увязать в проблемах ESRI, когда вы пытаетесь изучить концепции ООП.

Я также хотел бы отметить, что ресурсные центры разработчиков ESRI содержат огромное количество информации для начинающих [http://resources.esri.com/gateway/index.cfm ]

Если вы начнете с .NET и desktop developemnt, вы можете увидеть "страницу начала работы" в разделе [http://resources.esri.com/help/9.3/ArcGISDesktop/dotnet/concepts_start.htm ]

удачи.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top