Whither ArcObjects?

3196
6
12-23-2016 07:20 AM
EvanBlaisdell
New Contributor III

Circa 2010, with ArcGIS Desktop 10, the new add-in platform was released. Use .NET programming to develop add-ins for ArcMap! Books were published, classes were held. I wrote some pretty cool add-ins in C# with ArcObjects to help my company's workflow, in roughly the period 2010-2014.

Nowadays, I can barely find any references to the ArcObjects SDK for C# .NET. It's all Python all the time, or the Runtime SDKs, or WPF and Pro.

I love Python, and I love ArcGIS Pro, but what is the future of ArcObjects .NET development for ArcMap? There seem to be many things I cannot do with Python add-ins that I can only accomplish with aging .NET add-ins that I can no longer effectively debug/modify because the documentation is receding into the wilderness and Visual Studio support is increasingly lacking.

What's a .NET add-in developer to do?

Tags (3)
6 Replies
DanPatterson_Retired
MVP Emeritus

Such an interesting topic ... How Your First Programming Language Warps Your Brain | Laserfiche 

I am bemused (since 1968) by the '.... what language should I learn first.?...' and '... what now? ... '

Not that it is your first language necessarily, but there are some interesting ideas in there...

  • keep doing what you do with what you know
  • do the same thing in a new(er) language
  • or try something different, which may entail both
EvanBlaisdell
New Contributor III

What I should have asked is, what are ESRI's plans re: ArcObjects and exposing is full functionality via other APIs/SDKs? I feel like the waters have been muddied in the last couple years and, although the range of tools for building add-ins has increased, the capabilities have taken a step backward.

JoshuaBixby
MVP Esteemed Contributor

Esri is still releasing ArcObjects .NET SDK for ArcGIS 10.5, so at least they are supporting it for the newest release. Additionally, the What's new for developers at 10.5 does show some minor updates or changes, and at 10.5  "the .NET and VCPP samples are available online for download from https://github.com/esri/arcobjects-sdk-community-samples ."

I think the future of ArcObjects mirrors the product(s) built upon it, i.e., ArcMap, ArcGIS Engine, etc....   Although Esri won't go as far as saying ArcMap is deprecated, it is clear the amount of development resources being put into it is fading, and fast.  In terms of ArcMap/ArcCatalog, ArcGIS Engine, and similar products; I wouldn't expect any new APIs or SDKs to be developed for them.  The products are mature, close to over mature, and there is no incentive to develop new APIs or SDKs for those products.  Even when ArcMap is deprecated, I expect its retirement path to be a long one, so there will be some space for ArcObjects for quite some time.

The future of desktop GIS with Esri is ArcGIS Pro, and Pro might not be ready for primetime now, but each release gets it closer.  Looming in the background is also the continued push by Esri into Web GIS.  As more and more workflows move to Web GIS and mobile apps, the need for customizing desktop GIS will decrease.  Desktop GIS will never go away, but I think organization's use of it will decrease overall as Web GIS matures.

If you have ArcObjects-based customizations and code in your organization, I would personally start planning for what's next, even if you don't transition for a couple or few more years.

DuncanHornby
MVP Notable Contributor

I think many organisations have invested in custom extensions and whilst arcgis pro is still "catching up" with arcmap functionality I can see a real need for us desktop developers. Also I hear what you are saying about web gis but much of my work is processing data and desktop still rules the roost in my mind.

Web gis seems to require one to be an expert in web servers, databases, html, browsers, network technology and then gis concepts. So I think desktop needs to be around and hopefully arcobjects.

0 Kudos
BrentHoskisson
Occasional Contributor III

I think ESRI is just following the market.  Python scripting in ESRI products was intended to replace VBA, which was a steeper learning curve for non-programmers and locked ESRI into needing Microsoft since VBA is a Microsoft product.

The API will not go away.  There are still way too many people who want to integrate ESRI products into their programs and Python can't really do that (yet).  As long as there is Windows, Unix and IOS, the API will be necessary, so it will exist and need to be supported.

I'm not totally sure I agree with your observation that the documentation is disappearing.  I think the documentation hasn't always been exceptional to begin with, but it has always been there and it is maintained.  Once you get used to how ESRI does things, it always ends up so that not much trial and error is necessary to get things working.  And occasionaly the forums will find you someone who has worked with the interface before and has a suggestion.

0 Kudos
artifact
New Contributor III

I would agree the documentation has always been lackluster, but the forums have always made up for it. My biggest complaint is that with every release ESRI scraps the existing forums and introduces a new version. Over the years tons of great information was shared on the forums in their various incarnations: the original green arcobjects forum, edn (the red one), etc. It was a pain, but they at least they were still online and searchable if you knew where to look. When those were taken down, years of knowledge acquired from trial and error was lost. This latest incarnation is time consuming to browse, highly fractured, and difficult to view from a macro perspective.

0 Kudos