Archive for the ‘AaC’ Category

Perché multi-piattaforma non è bello

In questo periodo con il successo di Android e delle QT si sta rivalutando se vale effettivamente la pena sviluppare con framework legati a una sola piattaforma, la risposta è si!

Bene, ora che sai la risposta puoi smettere di leggere…

Scherzo, non andare via!

Per comodità guardiamo in dettaglio la situazione prima per device mobili, poi per i computer nel senso tradizionale.

Device Mobili

Questo è il campo in cui per primi ci si è chiesto se è realmente a vantaggio dell’utente avere
applicazioni che girano solamente su un dispositivo, alcuni sostengono di si, io ovviamente dico di
no.

iOS e Android sono due sistemi molto differenti, anche i telefoni su cui funzionano sono
differenti(iPhone ha un solo tasto fisico, Nexus One per esempio ne ha diversi), quindi ci
si aspetta che le applicazioni funzionino in maniera leggermente diversa.

Per esempio il pulsante di ricerca del N1 rende inutile un eventuale tasto “Cerca” nella nostra
applicazione, ma se deve anche girare su un altro dispositivo è un bel problema! Per risolverlo bisogna scendere a compromessi, o eliminare una funzione o avere due pulsanti per fare la stessa cosa, e su uno schermo da 3.5” non è il massimo.

E questo è uno solo dei problemi che si possono incontrare, basti pensare anche alla diversità
dell’hardware su cui gira il droide, ogni volta dovremmo valutare se vale la pena o no di
supportare una certa feature a discapito dei modelli più vecchi, o economici.

Un bel dilemma se non si vogliono fare scontenti i propri utenti.

Si potrebbe anche discutere quale dei due SDK sia migliore, a questo proposito rimando al post di
Jeff Lamarche che è sicuramente più preparato di me.

Se non hai voglia di leggere(male!) te lo dico io, sono praticamente uguali.

Computer

Qui il discorso si fa più interessante, mentre i cellulari sono più piattaforme per la fruizione di
contenuti, i computer sono usati quotidianamente per creare.

E quando creiamo qualcosa di solito vogliamo passarlo a qualche amico/collega, o no? Ma cosa
facciamo se il nostro amico non ha lo stesso programma con cui abbiamo creato il documento?

In nostro aiuto ci vengono i formati aperti, la cui specifica è aperta a tutti e dovrebbe essere
facile da implementare in tutti i programmi.

Quindi sono a favore di un programma che gira su più piattaforme e che produce uno stesso tipo di
documento? Ovviamente no!

I formati aperti sono lì apposta per quello, cribbio! Io scrivo un documento con Pages, lo salvo
in odf, lo passo al mio amico fan di Office(ne esistono poi?), lo modifica e lo
passa al collega che usa OpenOffice, tutti vivono felici e nessuno si lamenta della bruttezza di
OpenOffice su mac (ehm…).

Un altro argomento a sfavore del software multi-piattaforma è l’aderenza alle Human Interface
Guidelines
, se la nostra applicazione segue alla lettera le AHIG
probabilmente non seguirà né le GNOME HIG
quelle di KDE.

Notare come la guida scritta da Apple sia piena di belle immagini!

La mia “visione”

Bene, allora come penso si debba evolvere il software nel futuro, visto che tutti dicono che dovrà
diventare multi-piattaforma, mentre è chiaro chi io sono contrario?

La soluzione per me ottimale è quella di scrivere programmi che abbiano in comune una libreria
condivisa e GUI specifica per ogni OS, esattamente come succede per Pidgin e Adium.

Ringrazio Bl@ster per avermi dato l’idea per questo post, e per avermi convinto a iniziare questo blog.

Annunci