ArcObjects를 시작 하시겠습니까?


26

개발자가 아니고 개발자 가 되려고하지 않는다면 ArcObjects를 시작하기에 가장 좋은 경로 나 장소는 무엇입니까 ?

나는 거의 20 년 동안 오랫동안 전문적으로 gis를 사용해 왔으며, 대부분의 경우 arcinfo / arcgis; 나는 꽤 좋다. 저는 소프트웨어 개발을 배우고 있으며 공개 프로젝트에 적당한 규모의 작은 Python 응용 프로그램을 사용하고 있습니다. 나는 좋지 않다! 본격적인 소프트웨어 개발자가되고 싶지는 않지만 프로그래밍 없이는 할 수없는 일을 계속하고 있습니다 ( example ). arcgis 세계에서 이것은 파이썬 캠프에 나를 꽤 정사각형으로 만듭니다. 파이썬을 좋아하기 때문에 괜찮습니다. 그러나 파이썬은 ArcObject에 간단하게 액세스 할 수 없습니다. (Python 및 ArcObjects 는 가능 하지만 지원되지 않는 경로입니다.이 질문은 구타 경로를 따르는 것입니다.)

시작해야하지만 어디서? Arcgis의 도움으로 ESRI 개발자 네트워크를 시작할 수 있지만 1 년에 $ 1500 / 년은 예산에 맞지 않으며 썰매 망치를 사용하여 모기를 때리는 소리가 들립니다. 그리고 어떤 언어 .NET, Visual Basic 또는 Visual C ++?


업데이트 : 훌륭한 답변을 주셔서 감사합니다. 그것들에 비추어 볼 때 필자의 질문의 범위가 불필요하게 좁혀 졌다는 것을 깨달았다. "ArcObjects"는 내가 가야 할 방향이다.

나는 arcgis와 python만으로는 해결할 수없는 문제에 계속 부딪칩니다. X와 같은 문제를 해결하기 위해 무엇을 배우거나 사용할 수 있습니까? 소프트웨어 개발자가되고 싶지 않습니다. arcgis python 모듈에 노출되지 않는 몇 가지 작업 만 수행하면됩니다.


이것은 어떤 이유로 든 마이그레이션하지 않기로 결정한 스택 오버플로 ( ref ) 에서 재활용 된 질문입니다 . 그래서 저는 더 나은 위치에있는 사람들로부터보다 포괄적 인 답변을 얻을 수 있도록 다시 요청하고 있습니다.
matt wilkie

어떤 소프트웨어를 사용할 수 있습니까? ArcGIS는 가정해야합니다. Visual Studio 2008/2010 Pro / Express?
채드 쿠퍼

ArcGIS 9 & 10이 있습니다. 개발 소프트웨어를 선택하지 않았습니다.
matt wilkie

답변:


14

VB.Net 애드 인 . ESRI 워크 쓰루가 길을 안내해드립니다.

나는 수년간 VB6과 VBA를 사용해 왔으며 개인적으로 VB는 상당히 직관적입니다. 물론 VB .Net은 완전히 다른 동물이지만 추가 기능 구조는 배우고 배포하기가 비교적 간단합니다. 방금 ESRI 회의에서 ArcPy의 기술 워크샵을 받았고 VB.Net 애드 인을 계속 사용할 것이라고 말해야합니다. VBA가 애드 인으로 대체 될 것이라는 것이 명백해 졌을 때 강이 울고있었습니다. 그러나 학습 곡선을 위반 한 후에는 이것이 ArcGIS 10을 개선하는 가장 좋은 방법이라고 말해야합니다.이 설정으로 할 수있는 일은 없습니다. 나는 모든 곳에서 맞춤형 도구를 가지고 있습니다. ArcGIS에서 사람들이 불평하는 것들은 내가 원하는대로 사용자 정의합니다. 사무실 환경에서 도구를 작성하고 배포하는 것은 매우 쉬운 일입니다 ...

무료 Visual Studio Express와 SDK 만 설치하면됩니다.

워크 쓰루는 다음과 같습니다. http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#/Building_add_ins_for_ArcGIS_Desktop/0001000000w2000000/

ArcObject의 경우 예제와 코드 스 니펫이 너무 많아서 Visual Studio에 직접 추가하여 예제에서 기본 사항을 배울 수 있습니다.

버전 8에서 ESRI는 실제로 ArcObjects 서적을 출판했습니다. 훌륭한 참고 자료 인 C와 VB에 대한 많은 예제가 포함 된 2 개의 거대한 볼륨. 모두 온라인에서 찾을 수 있지만 ESRI에서 다시 게시하기를 바랍니다.


3
모든 점에 합의, buuuuttt, 나는 당신이 이전에 VBA / VB6 경험이없는 경우 이동 C 번호를 말할 것입니다.
채드 쿠퍼

예, 저는 VB에 부분적입니다. 개발자이고 다양한 플랫폼을 사용한다면 C #을 사용 하겠지만 VB는 시각적으로 더 명확하고 이해하기 쉽고 초보자에게 더 적합하다는 것을 알게되었습니다.
Jakub Sisak GeoGraphics

1
C # 사용시 +1 업계 리더들이 가장 좋아하는 .NET 언어입니다. VB와 C #을 초보자로 사용했으며 실제로 배우고 이해하기가 더 쉽다고 생각합니다. 또한 JavaScript 및 Java와 같은 다른 C 기반 언어에 더 가깝습니다.
wilbev

7

다음 은 .NET에서 ArcObjects를 시작하기 위해 ArcUser를 위해 작년에 쓴 기사에 대한 뻔뻔한 플러그입니다 .


그냥 읽어 보시면 훌륭한 기사입니다. 저와 같은 초보자를 위해 수치심을 유지하십시오! .net에서 TOC를 사용하는 것과 관련하여 COM 사용을 시작해야한다고 생각하십니까? 감사.
저스틴

6

진지한 개발자가되고 싶지 않다면 프로그래밍 세계로의 발걸음에 의문을 제기합니다. 여기서 문제는 코드를 작성하기 위해 발생하는 상황을 이해해야 한다는 것입니다. 그렇지 않으면 데이터, 응용 프로그램 및 컴퓨터에 대해 이해가 부족하여 의도하지 않은 컴퓨터에 무언가를 할 수 있습니다 (예를 들어 Python에서도 가능하지만 .NET은 실수를 조금 더 쉽게 만들어줍니다. comimt).

필드 별칭에 대한 귀하의 질문 (기능을 올바르게 이해했는지 잘 모르겠습니다) 기능 클래스에서 필드의 별칭을 변경하도록 요청 했습니까? 그렇다면 featureclass_to_featureclass를 필드 맵핑과 함께 사용할 수 있습니다. 예, 다른 피쳐 클래스를 작성하지만 데이터를 복사하고 수행하는 동안 별명을 변경하기위한 출력 영역이있을 수 있습니다.

Steve가 제안한 것처럼 ArcPy는 맵의 레이어 속성에 대한 새로운 액세스 권한으로 ArcGIS 10의 요구 사항에 응답 할 수도 있습니다.


re : field aliases-Q에 대한 답변으로 추가해야합니다. 가능한지 몰랐습니다.
matt wilkie

5

Esri의 온라인 리소스를 살펴보면 ArcObjects에 다른 ArcGIS 기술과 같은 풍부한 최신 리소스가없는 방법을 알 수 없었습니다.

이것이 내가 IGNETmetry Youtube 채널을 시작하여 ArcObjects를 논의 하기위한 이유 입니다. ArcObjects로 .NET Programming이라는 시리즈는 지금까지 14 번째 에피소드에 도달했으며 많은 GIS 사람들이 실제로 혜택을 받고 있습니다.

이 시리즈는 내가 만든 "Bestaurants"라는 가상의 프로젝트를 기반으로합니다. 여기서 식당을 검색, 관리, 추가, 삭제하기 위해 ArcMap 위에 응용 프로그램을 만들어야합니다. 각 에피소드마다 새로운 인터페이스를 소개하고 재미있는 방법으로 ArcObjects의 미세 입자에 대해 배웁니다!

나는 기회가 허락 될 때마다 매주 비디오를 게시합니다. 이것이 제 시간에하는 일이기 때문입니다.

지금 확인하고 알고있는 GIS 전문가와 공유하십시오. 시리즈를 개선하기 위해 항상 제안을 환영합니다.

누가 이걸 끝내면 또 다른 시리즈를 시작할 수 있을지 누가 ​​알 겠어요.

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


또한 ArcObject를 배우고 싶습니다. 그러나 나는 그것에 익숙하지 않다. ArcObject를 시작하려면 추가 라이센스가 필요합니까? 또는 추가 라이센스로 ArcGIS 10.4와 함께 ArcObject 구성 요소가 필요합니까?
Shiuli Pervin

2
예. ArcGIS Desktop 라이센스가 필요하지만 esri 웹 사이트에서 최신 ArcGIS Desktop을 60 일 동안 라이센스로받을 수 있습니다. 시작하기에 충분합니다.
hnasr

4

ArcObject로 개발하거나 SDK 설명서에 액세스하기 위해 EDN 구독이 필요하지 않습니다.

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


그러나 SDK 자체에 액세스하려면 EDN이 필요합니까? 그리고 솔직히 말해서, 코드를 뒤에서 꺼내는 것이 그러한 개발의 핵심에 관심이없는 사람에게는 정확히 옵션이 아닙니다.
Nathanus

2
아니요, 설치 CD에 있습니다.
blah238

모든 버전의 제품과 함께 제공됩니까?
Nathanus

내가 믿는 주요 릴리스들. 샘플은 온라인 도움말에도 있지만 .NET에는 목록이없는 것 같지만 Java에는 있습니다. help.arcgis.com/en/sdk/10.0/java_ao_adf/conceptualHelp/engine/… SDK와 함께 설치된 도움말 파일이 훨씬 편리합니다.
blah238

4
ArcGIS Desktop 사본이있는 경우 추가 기능을 개발하기 위해 EDN 가입이 필요하지 않습니다. EDN 서브 스크립 션은 개발자에게 ArcGIS 스택에있는 거의 모든 것의 사본을 훨씬 더 비싼 프로덕션 라이센스를 태우지 않고 제공 할 수있는 방법입니다. 프로덕션 라이센스가 전혀없는 경우 EDN은 개발에도 좋습니다. ArcObjects API로 코딩하고 개발하기 위해 EDN이 필요하지 않습니다.
JimBarry





0

이미 말했듯이 개발자가되고 싶지 않은 진정한 대답은 아닙니다.
주석보다 형식화 이점을 위해 여기에 게시했습니다.
이 블로그는 방금 왔으며 arcgis 서버에 관한 개발 커뮤니티에 방향을 제시하는 데 매우 광범위합니다.
ADF에서 벗어나려는 의도를 설명하고 웹 서비스 수용을 장려합니다.
나는 그것이 당신의 결정에 약간의 도움이되기를 바랍니다.

ESRI 블로그-ArcGISServer

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.