Præsentation er lastning. Vent venligst

Præsentation er lastning. Vent venligst

Jon Gregor Hemmingsen System arkitekt Fælleskomponenten ”Vis Stedet” – Open Source og den tekniske evolution.

Lignende præsentationer


Præsentationer af emnet: "Jon Gregor Hemmingsen System arkitekt Fælleskomponenten ”Vis Stedet” – Open Source og den tekniske evolution."— Præsentationens transcript:

1 Jon Gregor Hemmingsen System arkitekt Fælleskomponenten ”Vis Stedet” – Open Source og den tekniske evolution

2 Et krydsplatformskompatibelt API bestående af komponenter til visning og søgning i geodata. Web 2.0 AJAX. Eksempler og viden til teknikere & beslutningstagere. Integrationskomponenter til eksisterende infrastruktur. Adgang til webservices (adresser, stednavne, matrikler…) Realistisk moderne open source alternativ. Hvad er Vis Stedet i dag?

3 Vis Stedet overblik

4 ComponentHTML fragmentObject funktions Initialization (not visual) function VisStedetInit(){ startbetingelser….. } Choose various init parameters  Edit field  Indicator  Results  AJAX  Max. Results Same as above <div id="map" style="width: 600px; height: 600px; ….  Center  Select layers  Zoom  Pan  Choose area  Add layer

5

6

7 Uddrag fra borger.dk

8 Google maps API Vis Stedet API Microsoft Live Maps API OIOREST Demo af JSON

9 En afmystificering af teknologier og open source komponenter til integration og geokodning. JSON facader parallelt eller ovenpå SOAP. WFS til GML/KML konvertering. Geokodning af adresselister til KML Brug af Prototype til at udryde nogle af de værste faldgruber i JS. Script.aculo.us demonstreret til bygning af visuelle komponenter a’la MS.Net framework. Vis Stedet er også:

10 Arkitektur 2009 Homogent paradigme (Lagdelt) Færdig anvendelig HTML) Genbrug (Open Source) Rene abstraktionslag Open arkitektur

11

12 Protocol {"addressbook": {"name": "Rob Nielsen", "address": { "street": "Nordre Fasanvej 1" "city": "Frederiksberg", "zip": 2000, }, "phoneNumbers": [ "40190974", "38114618" ] } On the caller side one can now just call EVAL() and then recieve a fully instantiated object. No parsing needed!! var addressbook = eval(req.responseText); Any data can be accessed using the well known dot notation. var name = addressbook.name; var street = addressbook.address.street; var directPhone = addressbook.address.phoneNumbers[0]; JSON eksempel

13 Response.ContentEncoding = Encoding.UTF8; Response.Write("[\r\n"); String placeRequest = Request.Params["place"]; if (placeRequest != null && !placeRequest.Equals("")) { IGeoKeysFacadeService geoKey = new IGeoKeysFacadeService(); PlaceVO[] places = geoKey.getPlace("*" + placeRequest + "*", "", "", "", false, "", ”usr", ”pwd"); int end = places.Length < maxResultSize ? places.Length : maxResultSize; for (int i = 0; i < end; i++) { Response.Write(" {\r\n"); Response.Write(" \"name\": \"" + places[i].placeName + "\",\r\n"); Response.Write(" \"category\": \"" + places[i].placeCategory + "\",\r\n"); Response.Write(" \"municipality\": \"" + places[i].municipalityName + "\",\r\n"); Response.Write(" \"municipalitycode\": \"" + places[i].municipalityCode + "\",\r\n"); Response.Write(" \"displayName\": \"" + places[i].placeName + ”(" + places[i]. Name + ")”\",\r\n"); Response.Write(" \"crs\": \"epsg:25832\",\r\n"); Response.Write(" \"x\": " + ((double) places[i].placeLocation.point1.x) + ",\r\n"); Response.Write(" \"y\": " + ((double) places[i].placeLocation.point1.y) + "\r\n"); if (i < end - 1) Response.Write(" },\r\n"); else Response.Write(" }\r\n"); } Response.Write("]"); SOAP to JSON facade

14 KML GeoRSS er erstattet af KML. GML feed til fletning. KML har metadata indbygget. OGC standard. Understøttes af mange.

15

16 Hvor er vi på vej hen? Det er blevet mindre relevant at have en overbygning til Open Layers. Transformation af dataformater. Byggesten til Enterprise integration. JSON facader og hjælpefunktioner. Håndtering af store mængder GML/KML data. Mere afmystificering og know-how. Mindre API bygning. Konstant overvågning af Open Source alternativer.

17 Arkitektur fremsyn

18 Open Source produktet skal være sammenligneligt med de kommercielle produkter da organisationerne altid sammenligner dem på lige fod. Ingen organisation vil vælge Open Source hvis det sker på bekostning af projektets succes. Open Source projekter har næsten altid nytte af at genanvende hvad andre Open Source projekter gjorde godt – genbrug derfor altid. Open Source pointer

19 Vær ekstrem kritisk overfor anvendte licenser – nogle gange kan en enkelt linje eller udeladelse af samme kuldsejle hele formålet. Kvalitet er dynamik – som vises gennem løbende relevante opdateringer med en deraf følgende stadigt voksende anvender skare. Er projektet stadig i live? Kig på fora aktivitet, aktive donorer, version numre... Løser det faktisk mit problem – uden at indføre nye problemer? Open Source vurdering

20 Hvis du vil vide mere.. http://www.softwareborsen.dk/projekter/softwarecenter/visstedethttp://visstedet.kms.dk/cms/index.html


Download ppt "Jon Gregor Hemmingsen System arkitekt Fælleskomponenten ”Vis Stedet” – Open Source og den tekniske evolution."

Lignende præsentationer


Annoncer fra Google