ArcGIS für Entwickler

Die ArcGIS-Architektur für Entwickler kann als eine Reihe verschiedener Clienttypen (Desktopcomputer, mobile Geräte, Webbrowser usw.) und Server betrachtet werden, die über ein Services-Modell verbunden sind. Die Entwicklertechnologie für ArcGIS beruht auf diesem Client-Server-Denkmuster.

ArcGIS-System

ArcGIS umfasst eine umfangreiche Suite von Clients (Services-Clients), die für eine Vielzahl an Plattformen entwickelt wurden – vom Internet über mobile Geräte bis hin zu vollständigen Arbeitsstations-Desktopcomputern. ArcGIS umfasst zudem eine Reihe von Servern für die Veröffentlichung von GIS-Services. Diese Server werden als gehostete Services in der Cloud, als Unternehmensserver oder als lokale GIS-Runtime ausgeführt. Zudem kann für den Zugriff auf und das Arbeiten mit GIS-Dateien in einem lokalen Netzwerk ein Desktop-GIS verwendet werden.

ArcGIS-Client-APIs

ArcGIS beinhaltet eine Reihe von Client-Anwendungen für Desktop-, Web- und mobile Umgebungen, mit denen auf GIS-Daten und -Services zugegriffen wird, die in der Cloud oder vor Ort auf den Unternehmensservern gehostet werden. Darüber hinaus sind für die einzelnen Clienttypen Entwickler-APIs verfügbar, sodass eigene benutzerdefinierte Anwendungen und Workflows implementiert werden können. Im Folgenden werden einige dieser Entwickleroptionen beschrieben.

Native ArcGIS Runtime-Anwendungen

ArcGIS verfügt über eine Runtime-Umgebung, in der Entwickler einfach bereitzustellende, hochperformante native Anwendungen schreiben, für die die über ArcGIS verwalteten und freigegebenen geographischen Informationen genutzt werden. Dies wird als ArcGIS Runtime bezeichnet.

ArcGIS Runtime-Anwendungen können für eine Reihe von Bereitstellungsumgebungen entwickelt werden, darunter Desktops und mobile Geräte. Sie verwenden ein gemeinsames Objektmodell; der Zugriff auf und die Verwendung von geographischen Informationen erfolgt auf zwei grundlegende Arten:

  1. Durch das Verbinden mit Online-Karten und den unterstützenden GIS-Services sowie das Verwenden von diesen
  2. Durch die Bereitstellung von GIS-Paketen, die lokal auf dem Gerät verwendet werden (die Daten befinden sich auf demselben Gerät wie die Anwendung), und durch die Verwendung lokaler GIS-Funktionen

Pakete sind eine effiziente Möglichkeit, Daten mit ArcGIS Runtime-Anwendungen zu verteilen. Da es sich bei einem Paket um eine einzelne Datei auf einem Datenträger handelt, werden alle freizugebenden integrierten GIS-Funktionen in dieser gekapselt. Außerdem ist es einfach, Geräte für die Verwendung mit der Runtime-Anwendung bereitzustellen.

ArcGIS unterstützt eine eigenständige lokale Runtime-Umgebung für:

Ein Beispiel für die Verwendung von Paketen finden Sie in der Runtime WPF-Dokumentation unter dem Thema Von ArcGIS Runtime verwendete Pakete.

ArcGIS Web Applications

Mit ArcGIS können Entwickler auf eine Reihe von Web APIs für JavaScript, Adobe Flex und Microsoft Silverlight zugreifen und mit diesen arbeiten, um benutzerdefinierte Webanwendungen für die Verwendung mit ArcGIS-Services zu erstellen. Diese Webanwendungs-Frameworks stellen eine Verbindung mit Karten- und anderen verwandten GIS-Services, die über einen ArcGIS-Server, ArcGIS Online und offene Karten-Services im Internet veröffentlicht wurden, her und nutzen diese. Für diese APIs wird eine offene, dem Branchenstandard entsprechende REST-basierte Architektur verwendet, mithilfe derer ArcGIS-Inhalte und -Services sowohl als integraler Bestandteil von ArcGIS als auch außerhalb von ArcGIS verwendet werden können.

ArcGIS for SharePoint

ArcGIS-Inhalte und -Services können für Microsoft SharePoint-Websites verwendet werden. Hierzu werden mit dem SharePoint Site Builder für ArcGIS hilfreiche GIS-Anwendungen erstellt und bereitgestellt. Weitere Informationen finden Sie auf der ArcGIS for SharePoint-Webseite.

Anpassen und Erweitern von ArcGIS for Desktop

Zum Anpassen und Erweitern von ArcGIS for Desktop haben Sie die folgenden Möglichkeiten:

Verwenden von ArcObjects und ArcGIS Engine

ArcGIS Engine und die ArcObjects-Entwickler-APIs für .NET, Java und C++ können zum Entwickeln von eigenständigen, angepassten Anwendungen sowie von ArcGIS for Desktop-Erweiterungen mit der ArcObjects-Komponentenbibliothek verwendet werden.

Weitere Informationen finden Sie auf den folgenden ArcGIS Engine-Webseiten:

ArcGIS Services

ArcGIS for Server und ArcGIS Online stellen in serverbasierten Architekturen GIS-Funktionen bereit. GIS-Karten, Features, Bilddaten, Geoverarbeitungsmodelle, Locators und Datasets können als Web-Services bereitgestellt werden, sodass der Zugriff für GIS-Fachleute und andere Benutzer über letztlich beliebige Clients erfolgen kann. GIS-Services können mithilfe von Computerbanken sowohl vor Ort als auch in Cloudservern im Internet bereitgestellt und skaliert werden.

Benutzer erstellen mit ArcGIS for Desktop wichtige GIS-Karten und -Informationen und veröffentlichen diese mit ArcGIS Server und ArcGIS Online als Web-Services. Auf diese Weise ermöglicht ArcGIS einen umfassenden Zugriff auf Informationen ebenso wie die Möglichkeit, Ihr GIS für beliebige Konfigurationen oder Situationen passend zu skalieren.

Zu den unterstützten Web-Services-APIs zählen die REST-, SOAP- und OGC-Protokolle (wie z. B. WMS, WFS und WCS).

ArcGIS stellt eine offene Web-API für das Freigeben von Karten- und GIS-Services bereit, die dem REST-Entwurfsmuster folgen, um die Übernahme- und Verwendungsmöglichkeiten zu optimieren. Dadurch können Entwickler und Anwendungsersteller aller Art ArcGIS-Services mit beliebigen anderen Webinformationen verschiedener Quellen verbinden und kombinieren. Zudem erhalten Verbraucher Zugriff auf die gewaltige Vielfalt an geographischen Erkenntnissen, die in GIS-Umgebungen erstellt wird.

Entwicklerblick auf ArcGIS

Unter den folgenden Themen finden Sie weitere Informationen:

Weitere wichtige APIs

ArcGIS umfasst eine Reihe von zusätzlichen APIs für das Arbeiten mit geographischen Informationen. Dazu gehören folgende:

  • Python – Ein Open-Source-Skriptmodell, das von Informatikern und vielen Open-Source-Entwicklern verwendet wird. Python wird in ArcGIS als Skriptsprache für die Geoverarbeitung und Analyse mit ArcPy verwendet, einer systemeigenen Python-Bibliothek für ArcGIS. Weitere Informationen finden Sie unter Was ist ArcPy?
  • SQL – Mit ArcGIS werden große Mehrbenutzer-Geodatabases in relationalen Datenbanken (DBMS) verschiedener Arten gespeichert und verwaltet, darunter Oracle, SQL Server, IBM DB2, PostgreSQL und Netezza. Als Teil der Datenbankunterstützung von ArcGIS für die einzelnen DBMS ist eine SQL API mit besonderen Geodatabase-Funktionen und Unterstützung für räumliche Typen verfügbar.