Öppna JavaScript-bibliotek för webbkartor i kommunal tjänst: En jämförelse mellan OpenLayers 3 och Leaflet
2015 (Svenska) Självständigt arbete på grundnivå (högskoleexamen), 10 poäng / 15 hp
Studentuppsats (Examensarbete) Alternativ titel
Open source JavaScript libraries in municipal service : A comparison of OpenLayers 3 and Leaflet (Engelska)
Abstract [sv]
Användningen av webbaserade kartapplikationer ökar konstant. I synnerhet märks en ökning av mobil användning av sådana applikationer. Karlstads kommun ser ett ökat antal mobila användare av den egna webbkartan, och vill av den anledningen anpassa webbkartan för att förbättra upplevelsen för mobila användare. Kommunen avser ersätta tekniken bakom den nuvarande webbkartan med modernare alternativ. Valet står mellan två olika öppna JavaScript-baserade API:er för kartapplikationer på webben – OpenLayers 3 och Leaflet.I detta examensarbete jämförs OpenLayers 3 och Leaflet med avseende på kompatibilitet, funktionalitet och prestanda. Kompatibilitet och funktionalitet analyseras huvudsakligen genom studier av tillgänglig dokumentation och bedöms utifrån de krav och önskemål Karlstads kommun framfört. Kraven baseras på kompatibilitet med kommunens befintliga system, samt funktionalitet som minst motsvarar kommunens nuvarande webbkarta.Prestanda testas för utvalda funktioner för WMS- och WFS-tjänster, samt rendering av vektordata från fil. Därtill undersöks även prestandaskillnader mellan OpenLayers 3 och Leaflet i olika webbläsare. Prestandatesterna utförs i testmiljöer i form av enkla kartapplikationer. De utvalda funktionerna testas med enkla skriptmetoder för tidtagning, tillsammans med Firebug, ett insticksprogram till webbläsaren Firefox.Resultatet visar att både OpenLayers 3 och Leaflet uppfyller alla krav på kompatibilitet, även om Leaflet saknar uttryckligt stöd för vissa format. Vidare uppvisar OpenLayers 3 ett bredare inbyggt funktionalitetsstöd. Leaflet är mer begränsat i sitt grundutförande, men kan byggas ut med hjälp av olika insticksprogram för att uppnå samma funktionalitetsnivå som OpenLayers 3.Resultaten av prestandatesterna visar konsekvent att OpenLayers 3 är snabbare än Leaflet. Resultatet blir särskilt tydligt vid hantering av vektordata, där Leaflet är påtagligt långsammare. Trots klara och mätbara skillnader är däremot inte den upplevda skillnaden alltid lika uppenbar. Av den anledningen förespråkas praktiska användartester vid fortsatta studier.Sammanfattningsvis rekommenderas OpenLayers 3 för större applikationer med bredare funktionalitet. Leaflet framhålls dock som ett smidigt alternativ för enklare applikationer.
Abstract [en]
The use of web-based mapping applications is constantly increasing. In particular, an increase can be observed in the mobile use of such applications. Karlstad municipality is experiencing an increased number of mobile users of its web map. For that reason, the municipality aims to improve their web map in order to provide a more mobile-friendly service. The municipality intends to replace the technology of their existing web map with a more modern alternative and is currently looking at two different JavaScript-based open source APIs for web-based mapping applications – OpenLayers 3 and Leaflet.In this thesis, OpenLayers 3 and Leaflet are compared in terms of compatibility, functionality and performance. Compatibility and functionality are examined primarily through analysis of available documentation. Assessments are made based on requirements set forth by Karlstad municipality, regarding compatibility with existing server architecture and functionality equivalent to the municipality’s current web mapping service.Performance is assessed for WMS and WFS functions, and functions for file based vector data rendering. In addition, differences in performance with various web browsers are evaluated. The performance tests are carried out in environments set up as basic mapping applications. Given functions are tested with simple script methods for timing, together with Firebug, a Firefox web browser plugin.Test results show that both OpenLayers 3 and Leaflet meet all requirements regarding compatibility, even though Leaflet lacks support for certain formats. OpenLayers 3 shows, furthermore, a broader native support for different functions. Leaflet is more limited, natively, but can be extended through various plugins to achieve the same level of functionality as OpenLayers 3.Performance tests consistently show that OpenLayers 3 is the faster API. The results are particularly clear concerning vector data handling, where Leaflet is significantly slower. Despite distinct and measurable differences in performance, the perceived differences are not always as obvious. For this reason, practical user-focused tests are recommended for future studies of the subject.In conclusion, OpenLayers 3 is the recommended API for use in applications of larger scale and with richer functionality, while Leaflet is proposed as a more flexible alternative, suitable for simpler applications.
Ort, förlag, år, upplaga, sidor 2015. , s. 48
Nyckelord [sv]
gis, git, geografi, geografiska informationssystem, javascript, openlayers, webbkarta, webbkartor
Nationell ämneskategori
Annan geovetenskap och miljövetenskap
Identifikatorer URN: urn:nbn:se:kau:diva-41205 OAI: oai:DiVA.org:kau-41205 DiVA, id: diva2:916364
Utbildningsprogram Högskoleingenjörsprogrammet i lantmäteriteknik och geografisk IT, 180 hp
Handledare
Examinatorer
2016-04-042016-04-012016-04-04 Bibliografiskt granskad