Lo spigolo del mobile

by Giuseppe Lanzi on 28 maggio 2013

Chi ha frequentato i corsi di Instant Developer negli ultimi mesi aveva quasi sempre come obiettivo quello di sviluppare applicazioni mobile. È una cosa molto positiva, perché va incontro alla grande domanda di applicazioni di business in questo ambito. Ma c’è un rischio da evitare.

Il rischio è quello di prendere sottogamba la questione, pensando magari che basti un po’ di grafica “per cellulari” per ottenere un buon risultato. Ma quasi tutte le app di business devono funzionare offline, e quindi hanno bisogno di un database locale sul dispositivo che dovrà essere sincronizzato con quello del server. Si tratta, insomma, di un sistema con più database distribuiti: non è mica uno scherzo. Non siamo nemmeno abituati a pensare che i dati siano fisicamente divisi e che debbano essere consolidati in un secondo tempo.

Chi ha già iniziato la strada per il mobile si è accorto subito di quanto sia importante l’argomento, perché dobbiamo porci problemi che fino ad oggi non abbiamo mai dovuto affrontare: Come faccio a suddividere i dati tra i database? Quali sono i limiti che il dispositivo mobile mi impone? Come faccio a distribuire solo le differenze? E poi c’è anche il problema del progettare un’interfaccia per uno spazio ristretto, con logiche process oriented invece che data oriented.

Per quello che ho visto, ci sono tre suggerimenti utili che posso darvi:

  • sul database del dispositivo devono essere sincronizzati solo i dati strettamente indispensabili all’utente corrente, tutti gli altri devono restare solo sul server.
  • mentre implementate chiedetevi sempre “il codice che sto scrivendo viene eseguito sul server o sul dispositivo?”.
  • provate il maggior numero possibile di app mobile, la capacità di disegnare una buona interfaccia può venire soltanto da una buona esperienza utente.

Parlando di suggerimenti, sono in molti a chiedermi qual è il metodo migliore per formarsi con Instant Developer. La risposta è semplice: prima un po’ di autoformazione sulle applicazioni database oriented “tradizionali”, poi un corso intermedio sulla document orientation e solo dopo un corso mobile.

Può sembrare una strada lunga, ma il modo migliore per non andare a sbattere è conoscere tutto il percorso prima di cominciare a muoversi.

{ 2 comments… read them below or add one }

1 Mauro Marini 29 maggio 2013 alle 00:46

Una variante del ragionevole piano formativo potrebbe essere:
1) autoformazione sulle applicazioni DB Oriented Tradizionali
2) corso mobile per app con aggiornamento unidirezionale (trasferimento integrale del db)
3) formazione sulla DO
4) corso mobile per app con sincronizzazione bidirezionale

E’ un po’ più lungo complessivamente, ma ci vedo due vantaggi:
1) con la DBO si trattano meno strati di software, con maggiore facilità di comprensione e un rapporto più diretto con il DB che è un elemento di conoscenza comune a chi si avvicina a InDe.
2) si arriva rapidamente a qualcosa che gira su dispositivo mobile (con soddisfazione dello sviluppatore e del cliente), seppure in sola consultazione
3) si ottiene una comprensione chiara dell’architettura fisica e delle differenze tra online e offline
4) si arriva alla formazione sulla DO con avendo consolidato i concetti e i limiti della DBO e della sincronizzazione “a mano” . A quel punto si è fortemente motivati ad assorbire la DO.

E’ solo una alternativa. Se uno deve fare un’app che fin dall’inizio ha sincronizzazione bidirezionale , meglio il piano DBO-DO-OFFLINE.

2 Giuseppe Lanzi 31 maggio 2013 alle 09:44

Sì, è interessante. Parlando di alternative per vedere da subito qualcosa sul dispositivo, mi piacerebbe anche una guida passo passo orientata al mobile. Potrebbe essere una buona idea.
Ci stiamo lavorando, la formazione è una delle nostre priorità di quest’anno :)
In effetti, il mio post è rivolto soprattutto a chi desidera realizzare app di business da subito.

Leave a Comment

Previous post:

Next post: