Eine Typisierung von Mapbender, OpenLayers und MapFish

2,578 views

Published on

Ein Vergleich der OSGeo web mapping Software. OpenLayers ist eine JavaScript-Bibliothek für Web-Entwickler. Mapbender ist ein Softwarepaket zum Management von GDI in Geoportalen. MapFish ist ein Entwickler-Framework für komplexe WebGIS Anwendungen. Natürlich kann man alle drei auch in den jeweils anderen Kontexten einsetzen, bezahlt das aber mit deutlichen Mehraufwänden. Nachfolgend werden die Gemeinsamkeiten und Unterschiede der drei OSGeo-Projekte detailliert vorgestellt.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,578
On SlideShare
0
From Embeds
0
Number of Embeds
29
Actions
Shares
0
Downloads
16
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • JavaScript Bibliotheken, die einen abstrakten Zugriff auf das Document Object Model DOM ermöglichen CSS Selektor Engine Browserunabhängig programmieren Elementare Effekte wie Ein- und Ausblenden Hilfswerkzeuge wie Ajax-Funktionen Das Schweizer Taschenmesser des Web Developers Etwa 25kB Code Ext Core relativ neu, orientiert sich an jQuery
  • HTML bietet nur elementare GUI Komponenten wie Auswahllisten Intelligenter GUI-Werkzeugkasten Klick ExtJS: Grid – Spreadsheets im Browser Große Auswahl Aus einem Guß Klick jQuery UI: Auslese aus großem Fundus von jQuery Plugins (Datatables = Grid) Soll die Lücke des fehlenden Widget-Frameworks schließen Später gestartet als ExtJS, Nachholbedarf Jquery bietet mehr, ExtJS ist besser standardisier
  • GeoExt wurde 2008 gestartet Geo Widgets für Ext, GIS Erweiterung für ExtJS GeoExt ist eigenständiges Projekt, unabhängig von MapFish Mapbender bringt eigene jQuery Plugins mit, umfangreich Abhängig von Mapbender GeoJQuery ?
  • MapFish Client ist schlanker durch Einsatz von GeoExt Mapbender wurde gerade einem Refactoring unterzogen, Codebasis noch nicht so schön Auf der Lernkurve weiter unten, hat aber mehr (spezifische) Funktionalität
  • MapFish: Integraler Bestandteil von OpenLayers Mapbender: Optional, Mapbender pflegt noch alternativ einen eigenen WMS-Viewer Wms-Viewer ist sehr schlank, es gibt viele Widgets dafür
  • Eine Typisierung von Mapbender, OpenLayers und MapFish

    1. 1. Eine Typisierung: OpenLayers, Mapbender und MapFish Arnulf Christl Christoph Baudson FOSSGIS Osnabrück 2010
    2. 2. Haftungsausschluß <ul><li>Alle Informationen in dieser Präsentation sind nach bestem Wissen zusammengestellt wurden. Dennoch übernehmen die Autoren für Fehler, die durch die unsachgemäße Verwendung entstehen, keine Verantwortung.
    3. 3. Sowohl Christoph Baudson, als auch Arnulf Christl sind befangen, da sie beide seit vielen Jahren und mit viel Spaß im Projekt Mapbender arbeiten und sich deshalb in diesem Projekt auch besonders gut auskennen. </li></ul>Download: http://arnulf.us/publications/Eine_Typisierung_von_Mapbender_OpenLayers_und_MapFish.odp
    4. 4. Einführung Dieser Vortrag entstand aus dem Wunsch heraus, ein klareres Verständnis für die Aufgaben und Ziele der drei Web Mapping-Komponenten der OSGeo , OpenLayers, Mapbender und MapFish, zu entwickeln.
    5. 5. Vorab etwas zu Diversität In der Open Source Community gibt es einen Kunstbegriff der sich aus &quot; Competition &quot; und &quot; Cooperation &quot; zusammen-setzt, also der Kombination von Wettbewerb und Kooperation. Diese Coop etition ist, was uns im Idealfall alle beflügelt, und Raum lässt für Neues und Diversität. Wir hoffen damit, ein möglichst neutrales Bild zu schaffen.
    6. 6. Die Web Mapping Geschichte
    7. 7. Mapbender <ul><li>1999: Perl-basierter Client für das OGC WMT 1.0
    8. 8. 2001: Umstellung auf PHP, kommerzielle Verbreitung
    9. 9. 2003: Umstellung auf Open Source Lizenz
    10. 10. 2006: Gründungsprojekt der OSGeo, Inkubation
    11. 11. 2007: Einführung der jQuery-Bibliothek in Mapbender
    12. 12. 2008: Modularisierung, erste Schritte mit OpenLayers
    13. 13. 2009: Version 2.6 mit vielen Neuerungen </li></ul>
    14. 14. GoogleMaps <ul><li>2006: Die mit OGC WMS überwunden geglaubte Kachel kommt mit großem Getöse zurück. Ein technologischer Rückschritt (ein sogenannter Technolith ) wird als GIS Revolution gefeiert. Alle haben Angst vor Google.
    15. 15. 2007: &quot;Mashup&quot; wird zum Unwort des Jahres gewählt.
    16. 16. 2008: Plötzlich sind alle Karten nur noch Straßenkarten.
    17. 17. 2009: OpenStreetMap ist besser als Google. Google hat Angst vor OpenStreetMap.
    18. 18. 2010: In GoogleMaps-Karten fehlt immer eine Kachel </li></ul>
    19. 19. Openlayers <ul><li>2005: Erste Überlegungen auf der Where 2.0 Konferenz des O'Reilly Verlags im Silicon Valley
    20. 20. 2006: Vorstellung von OpenLayers V 1.0 auf der Where 2.0 Konferenz. Zielgruppe sind Web-Entwickler, die einfach nur eine Karte einbinden möchten.
    21. 21. 2007: Einführung der Slippy-Map
    22. 22. 2008: Release 2.7
    23. 23. 2008: Release 2.7 (OpenLayers ist sozusagen &quot;fertig&quot;) </li></ul>
    24. 24. MapFish Früh- und Vorgeschichte von MapFish ist undokumentiert. <ul><li>2007: erster Quellcode wird im Repository eingestellt
    25. 25. 2008: Die Entwickler-Community wächst über die Grenzen der Firma camptocamp hinaus
    26. 26. 2009: MapFish beantragt die Inkubation in der OSGeo </li></ul>
    27. 27. Ein Exkurs zu Kacheln Kachel-Technologie birgt Vor- und Nachteile: <ul><li>Kacheln passen ausgezeichnet zur Internet-Technologie.
    28. 28. Die Technik ist sehr robust und ausgezeichnet skalierbar.
    29. 29. Aus einem Datenbestand wird immer nur genau ein Koordinatensystem generiert: Datenmengenproblem.
    30. 30. Dynamische Änderungen lassen sich nicht gut abbilden.
    31. 31. (weitere Details siehe Langfassung ) </li></ul>http://www.mapbender.org/Eine_Typisierung:_OpenLayers,_Mapbender_und_MapFish
    32. 32. Komponentenanalyse <ul><li>OpenLayers ist mit MapFish und Mapbender nicht wirklich vergleichbar
    33. 33. MapFish Client und Mapbender Client
    34. 34. MapFish Server und Mapbender Server </li></ul>
    35. 35. Komponentenanalyse Client <ul><li>MapFish und Mapbender basieren auf HTML, CSS, JavaScript
    36. 36. Beide verwenden JavaScript-Bibliotheken, MapFish ExtJs, Mapbender jQuery </li></ul>
    37. 37. JavaScript Bibliotheken jQuery Ext Core
    38. 38. Widgets Ext Core jQuery jQuery UI ExtJS
    39. 39. Kontrollelemente (Widgets) Ext Core Ext JS jQuery jQuery UI GeoExt Mapbender jQuery Plugins
    40. 40. Mapping Client Ext Core Ext JS jQuery jQuery UI GeoExt Mapbender jQuery Plugins MapFish Client Mapbender Client
    41. 41. OpenLayers Ext Core Ext JS jQuery jQuery UI GeoExt MapFish Client Mapbender Client Open Layers Open Layers Mapbender jQuery Plugins
    42. 42. ExtJS und jQuery – Lizenz <ul><li>Ext Core: MIT
    43. 43. ExtJS: Dual (Kommerzielle und GPLv3)
    44. 44. jQuery und jQuery UI: Dual (MIT und GPLv3) </li></ul>
    45. 45. ExtJS und jQuery – Copyright <ul><li>ExtJS: Copyright liegt bei Ext JS, LLC (Kapitalgesellschaft)
    46. 46. jQuery und jQuery UI: Copyright liegt beim Team des jQuery Project
    47. 47. Überlegungen, die Rechte an die Software Freedom Conservancy (Non-Profit Organisation) abzutreten </li></ul>
    48. 48. ExtJS und jQuery – Theming <ul><li>ExtJS: Nicht nativ implementiert, aber über die User Extension Theme Builder in Java möglich
    49. 49. jQuery UI: Nativ über das jQuery UI CSS Framework, Erstellen von Themes mit dem ThemeRoller </li></ul>
    50. 50. ExtJS und jQuery – Verbreitung <ul><li>Google Trends: jquery, jquery ui, extjs </li></ul>
    51. 51. ExtJS und jQuery – Verbreitung <ul><li>Google Trends: jquery ui, extjs </li></ul>
    52. 52. Komponentenanalyse Server <ul><li>MapFish: REST-API, Implementationen in Python, PHP, Java, Ruby
    53. 53. Mapbender: keine standardisierte API, implementiert in PHP </li></ul>
    54. 54. Administration <ul><li>MapFish: Quellcode
    55. 55. Mapbender: Administrationsoberflächen </li></ul>
    56. 56. Datenbankkomponente <ul><li>MapFish: abstrakter Zugriff über SQLAlchemy (SQLite, Postgres, MySQL, Oracle, MS-SQL, Firebird, MaxDB, MS Access, Sybase, Informix, ...)
    57. 57. Mapbender: PostgreSQL und PostGIS </li></ul>
    58. 58. Lizenz <ul><li>MapFish: GPLv3
    59. 59. Mapbender: Dual, GPLv2 und BSD
    60. 60. OpenLayers: BSD </li></ul>
    61. 61. Copyright <ul><li>MapFish: Camptocamp, SourcePole, u.a.
    62. 62. OSGeo Inkubation läuft, danach womöglich klarer
    63. 63. Mapbender: OSGeo
    64. 64. OpenLayers: MetaCarta
    65. 65. Diskussion, ob Rechte an OSGeo abgegeben werden sollen </li></ul>
    66. 66. Welches Framework für welche Aufgabe? <ul><li>OpenLayers ist die Standardlösung für Webentwickler, die eine einfache Karte benötigen
    67. 67. Für diesen Zweck sind MapFish und Mapbender zu mächtig, der Einsatz lohnt nicht </li></ul>
    68. 68. Welches Framework für welche Aufgabe? <ul><li>MapFish ist ein Entwickler-Framework für WebGIS-Anwendungen
    69. 69. Klar strukturierter Code
    70. 70. Konsequenter modularer Aufbau (OpenLayers, GeoExt, ...)
    71. 71. Standardisierte API
    72. 72. Verschiedene Programmiersprachen </li></ul>
    73. 73. Welches Framework für welche Aufgabe? <ul><li>Mapbender ist eine Software zum Aufbau und zur Verwaltung verteilter Geodateninfrastrukturen (GDI)
    74. 74. Administration von großen Mengen an OGC-konformen Diensten wie WMS oder WFS
    75. 75. Benutzerspezifische Zugriffsberechtigungen
    76. 76. Applikationen erstellen über Webinterface
    77. 77. Es muss keine Zeile Code geschrieben werden </li></ul>
    78. 78. Fragen, Diskussion Diese Präsentation unterliegt der Creative Commons Share Alike Lizenz 3.0 Copyright © 2010 : Christoph Baudson Arnulf Christl 6. bis 9. September 2010 FOSS4G: Die internationale Open Source Konferenz der Geo-Branche. Mit freundlicher Unterstützung von: Metaspatial

    ×