Select to view content in your preferred language

Arcobjects vs ArcPro SDK

12476
8
Jump to solution
08-25-2015 12:22 AM
Durga_PrasadD
Deactivated User

I am looking for clarifications on below

What is ArcPro SDK for  ?

Is it  replacement for ArcEngine(ArcObjects) ?

For standalone applications ArcEngine(ArcObjects) is used for now.Will this get replaced by   ArcPro SDK ?

If   ArcPro SDK  is replacement for ArcEngine(ArcObjects) then How different is it from ESRI ArcGIS Run-time ?

ESRI ArcGIS Runtime or ArcPro SDK  what is right for long term ?

What do you advise for GIS system designers who wants to plan now on choosing between ArcEngine or otherwise.

Will I get some comparison table for  ArcEngine vs ESRI ArcGIS Run-time  vs ArcPro SDK

0 Kudos
2 Solutions

Accepted Solutions
OwenEarley
Frequent Contributor

In short:

  • ArcPro SDK is to develop custom functionality to extent ArcGIS Pro.
  • ArcGIS Engine is for developing custom applications that have mapping functionality.
  • ArcObjects can be used within ArcGIS Engine/Desktop/Server to extend existing ArcGIS functionality.
  • ArcGIS Runtime seems to be the replacement for Engine.

ESRI could do a much better job in distinguishing the differences between the offerings and also outlining the future roadmap in regards to Desktop ArcObjects and Engine.

I will also be watching the feedback on this post to see what other developers think the differences/advantages of the various platforms are.

View solution in original post

CharlesMacleod
Esri Regular Contributor

Durga, Thank you very much for your interest in the ArcGIS Pro SDK.  We have attempted to address many of our users questions w.r.t the Pro SDK in our ArcGIS Pro SDK FAQ which can be found at: http://github.com/Esri/arcgis-pro-sdk/wiki/FAQ . We will continue to update this FAQ across future releases of ArcGIS Pro.

With regards to Engine vs Runtime, Runtime is absolutely a replacement for Engine. A comparison of the two products and related discussions can be found here: ArcGISEngine vs ArcGIS Runtime Q&A

With regards to the future of these products please consult the product lifecycles which can be found at: http://support.esri.com/en/content/productlifecycles

For example, notice that 10.3.1 is not retired until December 1, 2020. That means that the corresponding SDKs for desktop 10.3.1 (Arcobjects, Arcengine) will follow the same support plan and lifecycle (meaning that the 10.3.1 releases of this product are not retired until Dec 1, 2020 also). Runtime likewise posts its lifecycle documentation there too. When 10.4 is released it too will have a lifecycle which will include the ArcObjects and ArcEngine. Likewise for 10.4.x and so on.

On the choice between Runtime and Pro, they serve different purposes. Runtime is, by its nature, a development product. It can be used to write applications from scratch or embed Esri technology in GIS and Non-GIS applications (whether on mobile, tablet, desktop). Pro is an application. It's functionality is dictated by its feature functions ~however~ it can be extended with its .NET SDK (or automated with its python SDK). Customization of the desktop platform (and, to an extent, Server platform) continues to be supported with ArcObjects.

View solution in original post

8 Replies
OwenEarley
Frequent Contributor

In short:

  • ArcPro SDK is to develop custom functionality to extent ArcGIS Pro.
  • ArcGIS Engine is for developing custom applications that have mapping functionality.
  • ArcObjects can be used within ArcGIS Engine/Desktop/Server to extend existing ArcGIS functionality.
  • ArcGIS Runtime seems to be the replacement for Engine.

ESRI could do a much better job in distinguishing the differences between the offerings and also outlining the future roadmap in regards to Desktop ArcObjects and Engine.

I will also be watching the feedback on this post to see what other developers think the differences/advantages of the various platforms are.

Durga_PrasadD
Deactivated User

"ESRI could do a much better job in distinguishing the differences between the offerings and also outlining the future roadmap in regards to Desktop ArcObjects and Engine"

@Owen Earley , As you rightly said I am looking for unambiguous roadmap from ESRI.

CharlesMacleod
Esri Regular Contributor

Durga, Thank you very much for your interest in the ArcGIS Pro SDK.  We have attempted to address many of our users questions w.r.t the Pro SDK in our ArcGIS Pro SDK FAQ which can be found at: http://github.com/Esri/arcgis-pro-sdk/wiki/FAQ . We will continue to update this FAQ across future releases of ArcGIS Pro.

With regards to Engine vs Runtime, Runtime is absolutely a replacement for Engine. A comparison of the two products and related discussions can be found here: ArcGISEngine vs ArcGIS Runtime Q&A

With regards to the future of these products please consult the product lifecycles which can be found at: http://support.esri.com/en/content/productlifecycles

For example, notice that 10.3.1 is not retired until December 1, 2020. That means that the corresponding SDKs for desktop 10.3.1 (Arcobjects, Arcengine) will follow the same support plan and lifecycle (meaning that the 10.3.1 releases of this product are not retired until Dec 1, 2020 also). Runtime likewise posts its lifecycle documentation there too. When 10.4 is released it too will have a lifecycle which will include the ArcObjects and ArcEngine. Likewise for 10.4.x and so on.

On the choice between Runtime and Pro, they serve different purposes. Runtime is, by its nature, a development product. It can be used to write applications from scratch or embed Esri technology in GIS and Non-GIS applications (whether on mobile, tablet, desktop). Pro is an application. It's functionality is dictated by its feature functions ~however~ it can be extended with its .NET SDK (or automated with its python SDK). Customization of the desktop platform (and, to an extent, Server platform) continues to be supported with ArcObjects.

MarcoRosa
Emerging Contributor

Hi Charles,

im looking for a future migration from arcgis engine to new solution. I've read you post about that , when you say "Runtime is absolutely a replacement for Engine".

I understood correctly ?

Months ago made a prototype and saw for example that data ( for istance geodatabase ), that are under service  and than is locked, that is not possible to modify his structure on the fly.

Many others operation available with arcobjects looks like not possible with Runtime.

Can be arcgis pro sdk the replacement for engine sdk ?

Thanmks for answers

GP

0 Kudos
GuillaumeBARRAS
Esri Contributor

I'm not sure about that. I believe you can't create standalone application with ArcGIS Pro SDK .Net. You only create addins and even if you can update or delete existing component this is not comparable.

With future version of the Runtime (like Quartz), capabilities of the Runtime will grow (analyse, direct access to data, ...), and became a real option for Engine developer. With the current version of Runtime SDKs, Runtime still an option for "simple" applications.

0 Kudos
CharlesMacleod
Esri Regular Contributor

Hi Giorgio,

On >>>when you say "Runtime is absolutely a replacement for Engine". I understood correctly ?

Yes, that's right. Runtime SDK is definitely the migration path we encourage for Engine developers.

>>>Can be arcgis pro sdk the replacement for engine sdk

In essence, what Guillaume is saying is correct. The Pro SDK is for extending ArcGIS Pro. It is not a toolbox or toolkit for assembling your own custom applications. You use the Pro SDK to extend ~that~ application (From a workflow standpoint, if Pro has the functionality you need then absolutely I encourage you to leverage Pro feature functionality especially if it saves you from having to write and maintain custom code).

The exception is the Geodatabase and Geometry APIs. They can be used stand-alone (on a machine on which Pro is installed and licensed). See https://github.com/esri/arcgis-pro-sdk/wiki/proconcepts-CoreHost  for more information and  https://github.com/Esri/arcgis-pro-sdk-community-samples/tree/master/CoreHost for examples.

0 Kudos
shankarb
Emerging Contributor

Hi Charles,

As we aware ArcGIS 10.x onward supported ArcPy, need more clarification on ArcGIS future road map.

  • Do we have any customization options other than ArcObject.Net, ArcPy, VBA on ArcMap?
  • Can ArcPy used for creating ICommands? If not what is the way to create commands & tools? 

Regards

Shankar

0 Kudos
CharlesMacleod
Esri Regular Contributor

For 10x: the following SDKs are available:

.NET (C#, VB)

Visual C++

Java

Cross Platform C++ (mostly for Linux developers)

VBA is supported via the VBA Compatibility setup

Additionally, Add-ins for 10x can be written using Python. This includes ICommand. (eg Python Add-ins)

There are no plans to retire any of the SDKs. All SDKs will be released again at 10.4.1 same as was done at 10.4 and previously.