ArcGIS for Developers: An Introduction Moey Min Ken
AGENDA Is development right for me? Building Apps on the ArcGIS platform Rest API & Web API Native SDKs Configurable Apps and Builders Extending the ArcGIS platform ArcGIS for Desktop ArcGIS for Server Operations Dashboard
Is Development right for me?
Developer Tools Software and Content to Build Your Own Apps HTML5 Android Build Apps! Configurable Apps App Builders C# QML REST Java Extend the Platform Swift APIs & SDKs.NET Python Web Windows JavaScript C++ Apple Qt Xamarin Objective-C
Developing on ArcGIS platform Build Apps Extend ArcGIS
Apps Building Apps on ArcGIS platform CONFIGURABLE APPS & BUILDERS WEB + REST API NATIVE SDKs
Configurable Apps and Builders Easy-to-Configure and Create Apps Native Devices Browser Based
DEMO Story Map Basic Download and modify esrimsia
The ArcGIS REST API The ArcGIS platform exposes much of its functionality through web services. To develop with these web services, use ArcGIS REST API. Demo
Web API ArcGIS Javascript API Powerful interface allows you to create robust map-based applications fully connected to ArcGIS platform 2 versions: 4.x, 3.x noaa
Dojo: Foundation for the ArcGIS API for JavaScript Why Dojo? Dojo build system Easy to use class based inheritance system AMD module loader for managing code in large applications dojo and dijit are both fully accessible Dojo fully supports internationalization Vector graphics abstraction via dojox/gfx to simplify drawing graphics using SVG, Canvas or VML
Native SDKs Native vs Web: Native Best device integration Offline workflow High performance Native development skills Web: Wide audience Irrespective of device Web development skills
Native SDKs: Cross Platform All Runtime APIs built on common Runtime core.
Qt (Pronounced cute ) Code Once, run anywhere on any device Cross-platform application framework Open Source version available 20 years of development Used in Esri s AppStudio for ArcGIS
ArcGIS Runtime for Qt 1 SDK, 2 APIs Qt Creator Cross platform IDE Design, develop, test, deploy from one tool ios deployment requires Xcode 1. C++ API Qt widgets Modern C++, C++ 11 High performance 2. QML API Declarative, Javascript-like
What is QML? JavaScript based, declarative language for designing UI-centric applications
The Stack App App App App Qt Quick Framework Core QML Components UI Controls Positioning Sensors AppStudio App Framework App Infrastructure File System Components Network Components UI Widgets Additional Plugins Barcodes Multimedia ArcGIS Runtime API Map Control Layers Geometry Portal Geocoding Network Analysis Geodatabase Symbology
ArcGIS Runtime for Qt QML API Natural for JavaScript developers Highly readable JSON/CSS syntax Declarative elements Imperative Javascript code to handle events Dynamic property Binding ArcGIS Runtime
DEMO AppStudio, QML Projects & ArcGIS Runtime for Qt
ArcGIS Runtime Quartz Release NEW APIs CONTENT ANALYSIS 3D CROSS PLATFORM Quartz
Developing on ArcGIS platform Build Apps Extend ArcGIS
Extending the ArcGIS platform
Extending ArcMap & ArcCatalog Add-Ins Custom Components ArcObjects API Add-in Toolbar Add-in Buttons Additional functionality via UI component access ArcPy API Automate using Custom Python geoprocessing Scripts
Extending ArcGIS Pro Configure custom workflows to streamline productivity with Tasks. Automate powerful geoprocessing tasks with Python. Extend ArcGIS Pro with custom add-in functionality using the Pro SDK for.net.
Extending ArcGIS Server Server object extensions (SOEs) New service operations to extend the base functionality of map or image services. Using ArcObjects code with GIS data & maps. Smaller memory footprint than geoprocessing tasks Well Defined API New Custom API Apps Custom Apps
Extending ArcGIS Server Server object interceptors (SOIs) Intercept requests for existing built-in operations of map or image services. Execute custom logic and alter the behaviour of these services. Uses EXISTING API. Well Defined API Apps
Extending Operations Dashboard Extend the built-in functionality of the app using the ArcGIS API for JavaScript. Develop your own widgets, map tools, and feature actions and include them in the operation view
WRAP UP Build new Native Apps using Runtime SDK Build web based apps using JavaScript API Extend operations of Desktop, Server and Operations Dashboard
SOLUTION MIX Technology: ArcGIS REST API ArcGIS JavaScript API ArcGIS Runtime SDK for Qt AppStudio for ArcGIS Operations Dashboard ArcGIS for Desktop ArcGIS for Server Data: HERE Data
STAY CONNECTED Esri Malaysia Training: https://esrimalaysia.com.my/training Subscribe to our e-newsletters: https://esrimalaysia.com.my/subscribe