Een programmeur legt uit waarom Android-apps lelijk zijn

Het debat over waarom dezelfde apps die beschikbaar zijn op iOS minder mooi zijn - en, aantoonbaar, minder bruikbaar – op Android heeft eindelijk zijn klokkenluider gekregen.





Meebo IM-client op Android (links) versus iOS (rechts)

Nikolai Sander, CEO van EODSoft, schrijven op de blog Android Gripes , gaf het perspectief van deze insider op de werking van Androids User Interface API:

Ik heb onlangs een van mijn apps overgezet naar het Android-platform en was geschokt toen ik de User Interface API leerde kennen. Het is de slechtste UI-bibliotheek waarmee ik ooit heb gewerkt (en ik heb met nogal wat gewerkt)! Ik zou het zelfs amateuristisch willen noemen. Het lijkt erop dat het is ontworpen door minstens 3 tot 4 verschillende mensen zonder gemeenschappelijke ontwerprichtlijnen. De naamgevingsconventies zijn inconsistent en de statische aard van het declareren van de gebruikersinterface in xml-bestanden werkt misschien voor het web, maar voor een speciale apparaatinterface is het een nachtmerrie. Dit samen met de fragmentatie van apparaten (voornamelijk verschillende resoluties) is het bijna onmogelijk om een ​​mooie gebruikersinterface op Android-apparaten te creëren.



Afgezien van zijn schattige logo's met een kerstthema, is Google nooit bekend geweest om zijn slimme ontwerp. Het volledig datagestuurde bedrijf lijkt het probleem op zijn vlaggenschipsite inderdaad te hebben omzeild door het koste wat kost te vermijden. Dat hield de zoekmachine van het bedrijf overzichtelijk, maar zoeken blijft een vrij eenvoudig ontwerpprobleem op weergaveniveau. In Android schaadt het gebrek aan glans uiteindelijk het bedrijf: bij een goed ontwerp gaat het er niet alleen om dingen esthetisch aantrekkelijk te maken, het gaat er tenslotte ook om ze functioneel te maken.

Terzijde: het falen van Android op deze afdeling verklaart niet het succes van Apple

Om te begrijpen waarom Apple zo goed is in API's voor gebruikersinterfaces, hoef je alleen maar te kijken naar de lange, lange geschiedenis van Apple met het maken van een API voor een heel ander soort besturingssysteem - OS X. Zelfs voordat er een OS X was, vroeger van Systeem 6, 7, 8 en 9, Apple heeft heel hard gewerkt om zijn applicatieontwikkelaars een standaard set tools te geven om alles te doen, van het weergeven van vensters tot het renderen van knoppen.



De huidige Cocoa-toepassingsprogrammeerinterface van Apple maakt het bouwen van apps voor OS X inderdaad gemakkelijker door delen van de ontwikkeling te automatiseren - precies zodat elke app op een Mac de richtlijnen voor de menselijke interface van Apple volgt.

Dit is waar de fanatieke toewijding van Steve Jobs aan bruikbaarheid echt tot uiting komt. Enerzijds zijn de resultaten uniform. Het is net als het oude Model T - je kunt een iPhone- of OS X-app krijgen in elke gewenste kleur, zolang het maar zwart is - dat wil zeggen, door Jobs goedgekeurd.

Omgaan met schermen van elke mogelijke grootte



Een tweede probleem met ontwikkeling voor Android is natuurlijk de gekmakende reeks mogelijke apparaatresoluties. Terwijl iOS-apps slechts in twee resoluties hoeven te werken - de originele iPhone en iPad / iPhone 4, moeten Android-apps er veel ondersteunen.

Zegt Sander:

Ik zou de ontwikkelaars of ontwerpers van de apps niet de schuld geven van de slechte gebruikersinterface. De meesten van hen schreven tenslotte eerst de iPhone-versie en ze hebben zeker alle middelen (bitmaps enz.) beschikbaar, maar in de meeste gevallen neem ik aan dat ze zo gefrustreerd raakten met de UI SDK op Android dat ze besloten om een ​​eenvoudigere te maken in om niet te veel tijd te verliezen. Ik weet dat ik heb. Proberen om de gebruikersinterface er goed uit te laten zien op het Android-platform is een proces van vallen en opstaan ​​en met vallen bedoel ik dat je het op alle mogelijke apparaatresoluties probeert en meestal fouten tegenkomt. Op de iPhone bouw je hem gewoon in Interface Builder voor 2 resoluties (320x480 en retina, wat bijna identiek is aan de iPad) en je bent klaar.



En zo zien al die apparaatresoluties eruit, met dank aan Nick bij AnIdea :

Schermresoluties van populaire Android-telefoons

Ontwikkelen voor zo'n breed scala aan schermformaten en beeldverhoudingen van apparaten betekent dat het niet alleen onmogelijk is om pixel-perfecte ontwerpen voor Android-interfaces te maken, er is zelfs geen enkele garantie dat een bepaalde interface kan worden geschaald om op een bepaald scherm te passen. Dat maakt het ontwikkelen voor Android-apparaten meer als het ontwerpen van webpagina's dan het ontwerpen van een applicatie-interface. Een uitdaging van deze omvang vereist de beste gebruikersinterfacebibliotheek die Google mogelijk kan bieden, maar het tegendeel lijkt waar te zijn.

Volg Mims op Twitter of neem contact met hem op via e-mail .

zich verstoppen