OpenLayers
# OpenLayers

OpenLayers ist eine JavaScript-Bibliothek, die es ermöglicht, Geodaten im Webbrowser anzuzeigen. Bei OpenLayers handelt es sich um eine Programmierschnittstelle, die eine clientseitige Entwicklung unabhängig vom Server zulässt.

## Beschreibung

OpenLayers ist in der Programmiersprache JavaScript entwickelt und unabhängig von der eingesetzten Serversoftware durch die Implementierung mehrerer Schnittstellen. Das Programm stellt typische Webmapping-Elemente bereit, wie zum Beispiel eine Skala zum Verändern des dargestellten Maßstabs. Mittels Editierelementen können dargestellte Karten konfiguriert werden, beispielsweise kann ein Marker platziert werden.

Als Zielgruppe gibt OpenLayers Anwender und Entwickler an, die eine Karte im Internet darstellen oder eine kartenbasierte Anwendung erstellen möchten. Es wurde jahrelang auf der Startseite von OpenStreetMap eingesetzt und wird unter anderem beim Schweizer Geoportal des Bundes verwendet.

Im Jahr 2008 wurde OpenLayers als Projekt bei der Open Source Geospatial Foundation aufgenommen und ist Open-Source-Software. Die Kommunikation im Projekt erfolgt über Mailinglisten in englischer Sprache.

## Schnittstellen

OpenLayers bietet verschiedene Schnittstellen, um Geodaten einzubinden. Neben dem Einbinden von einzelnen Bildern stehen auch Schnittstellen zu standardisierten Formaten des Open Geospatial Consortiums in OpenLayers bereit:

* Web Feature Service
* Web Map Service

Aber auch geschlossene Formate können eingebunden werden, z. B.:

* Google Maps
* Bing Maps

## Entwicklung

Im OpenLayers-Projekt sind eindeutige Entwicklungsrichtlinien vorgegeben.

Um den Projektablauf zu überwachen und die Entwicklung abzusichern, besitzt OpenLayers ein Projektkomitee, dem sechs stimmberechtigte Entwickler angehören. Das Projektkomitee überwacht den Projektablauf und versucht, im Interesse der Community, Entscheidungsprozesse zu beschleunigen.

Grundsätzlich ist jeder Anwender berechtigt, einen Fehler oder einen neuen Entwicklungswunsch in das Ticketsystem einzutragen. Hierbei sind besondere Regeln zu beachten. Falls möglich, soll an das Ticket gleich auch ein Patch für den Fehler oder das Feature angehängt werden.

Um die Qualität des Projekts zu sichern, sind über 1600 Modultests (englisch: unit tests) in über 150 Klassen implementiert.

