211service.com
Un programmatore spiega perché le app Android sono brutte
Il dibattito sul perché le stesse app disponibili su iOS siano meno belle e, probabilmente, meno utilizzabile – su Android ha finalmente ottenuto il suo informatore.

Client Meebo IM su Android (a sinistra) rispetto a iOS (a destra)
Nikolai Sander, CEO di EODSoft, scrivendo sul blog Android Gripes , ha fornito la prospettiva di questo addetto ai lavori sul funzionamento dell'API dell'interfaccia utente di Android:
Di recente ho portato una delle mie app sulla piattaforma Android e sono rimasto scioccato quando ho appreso l'API dell'interfaccia utente. È la peggiore libreria dell'interfaccia utente con cui abbia mai lavorato (e ho lavorato con parecchie)! Oserei anche definirlo dilettantistico. Sembra che sia stato progettato da almeno 3 o 4 persone diverse senza linee guida di progettazione comuni. Le convenzioni di denominazione sono incoerenti e la natura statica della dichiarazione dell'interfaccia utente nei file xml potrebbe funzionare per il Web, ma per un'interfaccia del dispositivo dedicata è un incubo. Questo insieme alla frammentazione dei dispositivi (principalmente diverse risoluzioni) è quasi impossibile creare una bella interfaccia utente sui dispositivi Android.
A parte i suoi simpatici loghi a tema natalizio, Google non è mai stato conosciuto per il suo design esperto. In effetti, l'azienda interamente basata sui dati sembra aver aggirato il problema sul suo sito di punta evitandolo a tutti i costi. Ciò ha mantenuto il motore di ricerca dell'azienda privo di confusione, ma la ricerca rimane un problema di progettazione abbastanza semplice a livello di visualizzazione. In Android, tuttavia, la mancanza di rifinitura sta finalmente danneggiando l'azienda: un buon design non consiste solo nel rendere le cose esteticamente gradevoli, dopotutto, ma anche nel renderle funzionali.
A parte: il fallimento di Android in questo reparto non spiega il successo di Apple
Per capire perché Apple è così brava con le API dell'interfaccia utente, basta guardare alla lunga, lunga storia di Apple con la creazione di un'API per un tipo molto diverso di sistema operativo: OS X. Anche prima che esistesse OS X, ai tempi di System 6, 7, 8 e 9, Apple ha lavorato molto duramente per fornire ai suoi sviluppatori di applicazioni un set standard di strumenti per fare qualsiasi cosa, dalla visualizzazione delle finestre al rendering dei pulsanti.
In effetti, l'attuale interfaccia di programmazione dell'applicazione Cocoa di Apple semplifica la creazione di app per OS X automatizzando parti dello sviluppo, proprio in modo che ogni app su un Mac segua le linee guida dell'interfaccia umana di Apple.
È qui che brilla davvero la devozione fanatica di Steve Jobs per l'usabilità. Da un lato, i risultati sono uniformi. È come il vecchio modello T: puoi ottenere un'app per iPhone o OS X in qualsiasi colore desideri, purché sia nero, ovvero approvato da Jobs.
Gestire schermi di ogni dimensione possibile
Naturalmente, un secondo problema con lo sviluppo per Android è la serie esasperante di potenziali risoluzioni del dispositivo. Mentre le app iOS devono funzionare fondamentalmente solo in due risoluzioni: iPhone originale e iPad / iPhone 4, le app Android devono ospitarne molte.
Dice Sander:
Non darei la colpa agli sviluppatori o ai designer delle app per la cattiva interfaccia utente. Dopotutto, la maggior parte di loro ha scritto prima la versione per iPhone e sicuramente hanno tutte le risorse (bitmap, ecc.) disponibili, ma nella maggior parte dei casi presumo che siano stati così frustrati dall'SDK dell'interfaccia utente su Android che hanno deciso di crearne uno più semplice in per non perdere troppo tempo. So di averlo. Cercare di ottenere l'aspetto corretto dell'interfaccia utente sulla piattaforma Android è un processo per tentativi ed errori e con prova intendo che lo provi su tutte le possibili risoluzioni del dispositivo e riscontri principalmente errori. Su iPhone, lo crei in Interface Builder per 2 risoluzioni (320x480 e retina, che è quasi identico all'iPad) e il gioco è fatto.
Ed ecco come appaiono tutte quelle risoluzioni del dispositivo, per gentile concessione di Nick ad AnIdea :

Risoluzioni dello schermo dei telefoni Android più diffusi
Lo sviluppo per una gamma così ampia di dimensioni dello schermo del dispositivo e proporzioni significa che non solo è impossibile creare design perfetti per i pixel per le interfacce Android, non c'è nemmeno alcuna garanzia che una determinata interfaccia possa essere ridimensionata per adattarsi a uno schermo particolare. Ciò rende lo sviluppo per dispositivi Android più simile alla progettazione di pagine Web che alla progettazione di un'interfaccia dell'applicazione. Una sfida di questa portata richiede la migliore libreria di interfacce utente che Google potrebbe fornire, ma sembra essere vero il contrario.