Programming patterns

The following programming patterns are discussed in this chapter:

  • Loading resources asynchronously — Use the Loadable API to load metadata asynchronously for maps, layers, and other resources to do such things as monitor the load status of the resource, handle concurrent and repeated requests to load the resource, cancel a load, retry to load if previous attempts failed, and handle circumstances such as network outages or service interruption.
  • Tasks and jobs — Tasks and jobs are used to perform work asynchronously for potentially long-running operations. Examples include Geocode and search, Route and directions, and Utility network analysis.

  • Performance considerations — Decisions you make when choosing things like rendering mode, scale range, and use of graphics versus features may have an effect on your app's performance.

  • Offline maps, scenes, and data explores a range of offline work patterns that you can implement to allow users to continue being productive when network connectivity is poor or nonexistent. Which offline pattern you choose determines whether or not your users can define their own map area, and, if they are editing, how multiple editors will sync their edits back to a web map or back to a branch version.

  • SwiftUI View programming patterns

    • Manage GeoView state — Manage the state of your app's maps, scenes, and any associated data using a model. This model preserves your program state and separates your application data and business logic from your user interface.

    • Configure a GeoView — Customize the appearance, behavior, and gestures of your app's map or scene views using view modifiers.

    • Perform GeoView operations — Execute operations, such as identify and set viewpoint, on a map or scene view using instance methods provided by their proxy structures.

    • Concurrent GeoView tasks — Use the task view modifier and Task block to execute asynchronous workflows in map and scene views.

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.

You can no longer sign into this site. Go to your ArcGIS portal or the ArcGIS Location Platform dashboard to perform management tasks.

Your ArcGIS portal

Create, manage, and access API keys and OAuth 2.0 developer credentials, hosted layers, and data services.

Your ArcGIS Location Platform dashboard

Manage billing, monitor service usage, and access additional resources.

Learn more about these changes in the What's new in Esri Developers June 2024 blog post.

Close