Applicazione mappa multipiattaforma

6

Sto lavorando a un progetto web (PHP, jQuery) che al momento utilizza Google Maps per potenziare la funzionalità della mappa dell'applicazione, tuttavia dobbiamo renderlo multipiattaforma come se fosse possibile andare al dashboard e sceglierne uno da 5-10 fornitori di mappe (di cui Goolge Maps è solo uno di loro) alla base della funzionalità della mappa.

Quindi, poiché l'applicazione dovrebbe mostrare i dati sulla mappa, quasi in ogni singolo luogo dobbiamo occuparci dell'API fornita da quel fornitore di mappe specifico. Attualmente stiamo pensando di rivedere la nostra struttura modulare e / o di realizzare qualcosa come un adattatore per ogni provider per gestire la loro sintassi nativa ma tramite i nostri metodi standard.

Desidero avere le tue idee e le tue esperienze, specialmente se hai mai creato un'interfaccia per trattare tramite 2-3 diversi fornitori di mappe. Ciò sarebbe di grande aiuto e lo apprezzo molto.

Se hai bisogno di ulteriori informazioni, chiedimi di aggiornare la domanda.

Aggiornamento:

Siccome Vicky Chijwani ha suggerito Mapstraction , ora mi chiedo anche quale sia il migliore (pro e amp; cons), con un adattatore implementato su Javascript o PHP?

    
posta Mahdi 16.10.2012 - 10:41
fonte

1 risposta

5

Una strategia dell'adattatore sembra abbastanza buona per questo caso, ovvero definire un'interfaccia comune e quindi procedere a implementare tale interfaccia per ciascun provider. La scelta del fornitore di mappe da utilizzare può essere un'opzione configurabile nelle impostazioni.

Vedi anche Mapstraction , una libreria JavaScript che fornisce un'interfaccia comune per diversi fornitori di mappe, tra cui Google, Bing, Yahoo e OpenStreetMap. È concesso in licenza con la licenza BSD.

UPDATE [25 ottobre 12], tratto da la mia risposta alla tua altra domanda di follow-up, per completezza qui :

Per quanto posso vedere, non ci sono vantaggi nell'implementazione degli adattatori sul lato server piuttosto che in JavaScript. In effetti staresti meglio con JavaScript perché è il linguaggio ubiquitario del web ; se in futuro deciderai di riscrivere il tuo back-end utilizzando un'altra tecnologia, non dovrai riscrivere gli adattatori.

Se sei riluttante ad usare JavaScript perché non hai abbastanza esperienza con esso, anche allora il mio suggerimento rimarrà invariato, perché ogni applicazione web moderna e client-pesante richiede che tu sentiti a tuo agio.

Inoltre, stai ottenendo una libreria di adapter JavaScript matura e testata, con una licenza BSD abbastanza permissiva, sotto forma di Mapstraction, che ho citato sopra, quindi questa è un'ottima opzione se puoi usarla. Ad ogni modo, penso che JavaScript sia la soluzione giusta per te.

    
risposta data 16.10.2012 - 11:22
fonte

Leggi altre domande sui tag