Rozpoczynasz pracę z ArcObjects?

Jaka jest najlepsza droga lub miejsce do rozpoczęcia pracy z ArcObjects, jeśli ktoś nie jest programistą i nie chce zostać programistą ?

Używam gis profesjonalnie przez długi czas, prawie dwie dekady, do większości z nich używam arcinfo / arcgis; jestem całkiem niezły. Uczę się programowania, a nawet mam skromnie udaną małą aplikację Pythona używaną w publicznym projekcie; nie jestem dobry! Nie chcę zostać pełnoprawnym programistą, ale ciągle napotykam rzeczy, których po prostu nie mogę zrobić bez programowania ( przykład ). W świecie arcgis stawia mnie to całkiem prosto w obozie Pythona, co jest w porządku, ponieważ lubię Pythona, jednak Python nie ma bezpośredniego dostępu do ArcObjects. (Python i ArcObjects jest możliwe , ale jest to nieobsługiwana trasa. To pytanie dotyczy podążania utartą ścieżką.)

Potrzebuję aby rozpocząć, ale gdzie? Pomoc Arcgis mówi , aby rozpocząć pracę z ESRI Developer Network ale 1500 USD rocznie zdecydowanie nie mieści się w moim budżecie i brzmi to jak używanie młotka kowalskiego do odbijania komarów. A jaki język .NET, Visual Basic czy Visual C ++?


AKTUALIZACJA: Dziękuję wszystkim za wspaniałe odpowiedzi. W świetle ich zdaję sobie sprawę, że niepotrzebnie zawęziłem zakres mojego pytania, zakładając wcześniej„ ArcObjects ” to kierunek, w którym muszę iść. Bardziej otwarte sformułowanie jest bardziej podobne do:

Ciągle napotykam problemy, których po prostu nie mogę rozwiązywać tylko za pomocą arcgis i pythona. Czego jeszcze mogę się nauczyć / wykorzystać do rozwiązywania problemów takich jak X? Nie mam zamiaru zostawać programistą. Muszę tylko zrobić kilka rzeczy, które nie są widoczne dla modułów ArcGIS Python.

Komentarze

  • to jest ponownie przetworzone pytanie od Stack Overflow, ( ref ), które z jakiegokolwiek powodu ' zdecydowaliśmy się nie migrować tutaj. W związku z tym ' ponownie proszę o uzyskanie bardziej wyczerpującej odpowiedzi od osób, które mogą lepiej pomóc.
  • Jakie oprogramowanie masz do dyspozycji? ArcGIS muszę założyć. Visual Studio 2008/2010 Pro / Express?
  • Mam ArcGIS 9 & 10. Nie zaznaczono ' jakiekolwiek oprogramowanie deweloperskie.

Odpowiedź

VB.Net Dodatki na pewno. Przejścia ESRI zaprowadzą Cię w drogę.

Od lat używam VB6 i VBA i osobiście uważam, że VB jest dość intuicyjny. Oczywiście VB .Net to zupełnie inne zwierzę, ale dodaj -w strukturze jest stosunkowo prosta do nauczenia się i wdrożenia. Właśnie wziąłem warsztat techniczny w ArcPy na konferencji ESRI i muszę powiedzieć, że pozostanę przy VB.Net dodatki. Płakałem rzekami, gdy stało się jasne, że VBA zostanie zastąpiony dodatkami, ale po przekroczeniu krzywej uczenia się muszę powiedzieć, że jest to najlepsza poprawa w ArcGIS 10. Nie ma nic, czego nie mogę zrobić z tą konfiguracją . Mam niestandardowe narzędzia w każdym miejscu. Rzeczy, na które ludzie narzekają w ArcGIS, po prostu dostosowuję do swoich upodobań. Pisanie narzędzia i rozpowszechnianie go w środowisku biurowym to pestka …

Wszystko, czego potrzebujesz to darmowy program Visual Studio Express i zainstalowany pakiet SDK.

Oto przewodnik: http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#/Building_add_ins_for_ArcGIS_Desktop/0001000000w2000000/

Jeśli chodzi o ArcObjects, jest tak wiele przykładów i fragmentów kodu, które można dodać bezpośrednio do programu Visual Studio, w stanie nauczyć się podstaw na przykładach.

W wersji 8 ESRI faktycznie opublikowało książki ArcObjects; 2 ogromne tomy, które były świetnym odniesieniem i zawierały wiele przykładów dla C i VB. Wszystko można teraz znaleźć w Internecie, ale chciałbym, aby ESRI ponownie je opublikowało.

Komentarze

  • Zgadzam się we wszystkich punktach, buuuuttt, I powiedziałbym: przejdź do C #, jeśli nie ' Nie mam wcześniejszego doświadczenia z VBA / VB6.
  • Tak, jestem zwolennikiem VB. Gdybym był programistą i korzystałem z różnych platform, na pewno wybrałbym C #, ale uważam (i tak jest popularna opinia) VB za bardziej przejrzysty wizualnie i łatwiejszy do zrozumienia, a co za tym idzie, lepiej przystosowany dla początkujących.
  • +1 na bieżąco z C #. Jest to ' zdecydowanie ulubiony język .NET przez liderów w branży. Jako początkujący używałem zarówno języka VB, jak i C # i wydaje mi się, że ' jest łatwiejszy do nauczenia i zrozumienia. Jest również bliżej innych języków opartych na C, takich jak JavaScript i Java.

Odpowiedź

Oto bezwstydna wtyczka do artykułu, który napisałem w zeszłym roku dla ArcUser na pierwsze kroki z ArcObjects w .NET .

Odpowiedź

Jeśli nie „Jeśli nie chcesz być poważnym programistą, zakwestionowałbym Twój krok wkroczenia w świat programowania. Problem polega na tym, że aby napisać kod, powinieneś zrozumieć, co dzieje się pod maską. W przeciwnym razie możesz zrobić coś ze swoimi danymi, aplikacją, a nawet komputerem, czego nie miałeś zamiaru robić, tylko z powodu braku zrozumienia (tak, możesz to zrobić również w Pythonie, ale .NET jest krokiem dalej w popełnianiu błędów. comimt).

Jeśli chodzi o twoje pytanie dotyczące aliasów pól (nie jestem pewien, czy dobrze je zrozumiałem), czy prosiłeś o zmianę aliasów pól w klasie obiektów? Jeśli tak, możesz użyj funkcji featureclass_to_featureclass z mapowaniem pól. Tak, tworzy kolejną klasę obiektów, ale możesz po prostu mieć obszar wyjściowy do kopiowania danych i zmiany aliasów podczas wykonywania tej czynności.

Jak sugeruje Steve, ArcPy może również odpowiedzieć na Twoje wymagania w ArcGIS 10 z nowym dostępem do właściwości warstw na mapie.

Odpowiedź

Przeglądając zasoby online dotyczące Esri, nie udało mi się ” Pomóż, ale zwróć uwagę, że ArcObjects nie ma swojego udziału w bogatych i aktualnych zasobach, jak inne technologie ArcGIS.

To jest re ason Uruchomiłem kanał YouTube IGeometry , aby omówić ArcObjects, serię, którą nazwałem .NET Programming with ArcObjects, dotarła do 14. odcinka i wiele Ludzie z GIS naprawdę czerpią z tego korzyści.

Seria oparta jest na fikcyjnym projekcie, który stworzyłem o nazwie „Bestaurants”, w którym musisz stworzyć aplikację na ArcMap, aby wyszukiwać, zarządzać, dodawać i usuwać restauracje. W każdym odcinku wprowadzamy nowy interfejs i dowiadujemy się o drobnoziarnistych obiektach ArcObjects w zabawny sposób!

Publikuję filmy co tydzień, kiedy tylko okazja na to pozwala, ponieważ robię to w wolnym czasie.

Zapraszam do sprawdzenia tego teraz i podzielenia się nim z każdym maniakiem GIS, którego możesz znać. Sugestie dotyczące ulepszenia serii są zawsze mile widziane.

Kto wie, może kiedy już to skończymy, może rozpocznę kolejną serię.

http://www.youtube.com/watch?v=XrZs1rwmOwg&list=PLQnljOFTspQXqYsWJG8o-eJpGlvzww9lE&index=1

Odpowiedź

Nie potrzebujesz subskrypcji EDN do programowania za pomocą ArcObjects ani do dostępu do dokumentacji SDK.

http://help.arcgis.com/en/sdk/10.0/arcobjects_net/ao_home.html

Komentarze

  • Ale potrzebujesz EDN, aby uzyskać dostęp do samego SDK czy nie? I pozwól ' być szczerym, wyciąganie kodu z tyłu nie jest opcją dla kogoś, kto nie jest zainteresowany szczegółami takiego rozwoju .
  • Nie, ' znajduje się na instalacyjnej płycie CD.
  • Jest dostarczany z każdą wersją produktu?
  • Tylko główne wydania, które moim zdaniem. Przykłady są również w pomocy online, chociaż wydaje się, że wersja .NET ' nie zawiera ich listy, natomiast wersja Java ma : help.arcgis.com/en/sdk/10.0/java_ao_adf/conceptualHelp/engine/… Plik pomocy instalowany z SDK jest jednak znacznie bardziej przydatny.
  • Jeśli masz kopię ArcGIS Desktop, nie potrzebujesz subskrypcji EDN do tworzenia dodatków. Subskrypcja EDN to po prostu sposób na zapewnienie programistom kopii prawie wszystkiego ze stosu ArcGIS bez spalania znacznie droższych licencji produkcyjnych. EDN jest również dobry do programowania, jeśli nie masz żadnych licencji produkcyjnych. Nie potrzebujesz EDN do kodowania i programowania za pomocą ArcObjects API.

Odpowiedź

Opublikowałem podobne pytanie o najlepszych zasobach ArcObjects:

Zasoby ArcObjects

Fragmenty kodu dostarczone przez ArcGIS Resource Center są bardzo pomocne i dostępne w językach C # i VB.NET.

Odpowiedź

Sugerowałbym naukę arc.py, jeśli jeszcze nie znasz arcobjects, ponieważ esri odchodzi od vba arcobjects jako języka skryptowego. W przeciwnym razie chcesz, aby Visual Studio i C # zaczęły pisać obiekty łukowe. To świetna książka. http://www.amazon.com/Exploring-ArcObjects-Two-Michael-Zeiler/dp/1589480007

Odpowiedź

Nowa książka o ArcObjects jest już dostępna (obejmuje również 10.1).

Wprowadzenie ArcGIS for Desktop Development przy użyciu .NET

Odpowiedź

Pennsylvania State University niedawno udostępniła bezpłatny dostęp Kurs GIS Application Development .
Uczy podstaw ArcObjects w VB.NET

Odpowiedź

To nie jest prawdziwa odpowiedź, ponieważ już powiedziałeś, że nie chcesz być programistą.
Napisałem tutaj, aby uzyskać przewagę formatowania nad komentarzami.
Ten blog właśnie się pojawił i jest dość obszerny, aby nadać kierunek społeczności deweloperów dotyczący serwera arcgis.
Przedstawia zamiar odejścia od ADF i zachęca do korzystania z usług internetowych .
Mam nadzieję, że pomoże to w pewnym stopniu Twojej decyzji.

Blogi ESRI – ArcGISServer

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *