211service.com
Programista wyjaśnia, dlaczego aplikacje na Androida są brzydkie
Debata o tym, dlaczego te same aplikacje dostępne na iOS są mniej ładne – i prawdopodobnie mniej użyteczny – na Androida w końcu dostał swojego informatora.

Klient Meebo IM na Androida (po lewej) i iOS (po prawej)
Nikolai Sander, CEO EODSoft, pisanie na blogu Android Gripes , dał temu insiderowi spojrzenie na działanie interfejsu użytkownika Androida API:
Niedawno przeniosłem jedną z moich aplikacji na platformę Android i byłem zszokowany, gdy nauczyłem się interfejsu API interfejsu użytkownika. Jest to najgorsza biblioteka interfejsu użytkownika, z jaką kiedykolwiek pracowałem (a pracowałem z kilkoma)! Posunąłbym się nawet do nazwania tego amatorskim. Wygląda na to, że został zaprojektowany przez co najmniej 3 do 4 różnych osób bez wspólnych wytycznych projektowych. Konwencje nazewnictwa są niespójne, a statyczny charakter deklarowania interfejsu użytkownika w plikach xml może działać w Internecie, ale dla dedykowanego interfejsu urządzenia to koszmar. To wraz z fragmentacją urządzeń (głównie różne rozdzielczości) jest prawie niemożliwe, aby stworzyć ładny interfejs użytkownika na urządzeniach z Androidem.
Oprócz uroczych logo o tematyce świątecznej, Google nigdy nie był znany ze swojego zręczności w projektowaniu. Rzeczywiście, wydaje się, że firma całkowicie oparta na danych ominęła problem na swojej flagowej stronie, unikając go za wszelką cenę. Dzięki temu wyszukiwarka firmy jest wolna od bałaganu, ale wyszukiwanie pozostaje dość prostym problemem projektowym na poziomie wyświetlania. Jednak w Androidzie brak dopracowania w końcu szkodzi firmie: dobry design to nie tylko tworzenie estetycznych rzeczy, ale także funkcjonalność.
Na bok: porażka Androida w tym dziale nie tłumaczy sukcesu Apple’a
Aby zrozumieć, dlaczego Apple jest tak dobry w interfejsach API interfejsu użytkownika, wystarczy spojrzeć na długą, długą historię firmy Apple w tworzeniu interfejsu API dla zupełnie innego rodzaju systemu operacyjnego – OS X. Jeszcze zanim pojawił się OS X, w dawnych czasach systemu 6, 7, 8 i 9 firma Apple bardzo ciężko pracowała, aby dać swoim twórcom aplikacji standardowy zestaw narzędzi do robienia wszystkiego, od wyświetlania okien po renderowanie przycisków.
Rzeczywiście, obecny interfejs programowania aplikacji Cocoa firmy Apple ułatwia tworzenie aplikacji dla systemu OS X, automatyzując etapy rozwoju – dokładnie tak, aby każda aplikacja na komputerze Mac była zgodna z wytycznymi Apple dotyczącymi interfejsu użytkownika.
Tutaj naprawdę błyszczy fanatyczne przywiązanie Steve'a Jobsa do użyteczności. Z jednej strony wyniki są jednolite. To jak stary Model T – możesz pobrać aplikację na iPhone'a lub OS X w dowolnym kolorze, o ile jest czarny – tj. Zatwierdzony przez Jobs.
Radzenie sobie z ekranami każdego możliwego rozmiaru
Oczywiście drugim problemem związanym z programowaniem na Androida jest szalony wachlarz potencjalnych rozdzielczości urządzeń. Podczas gdy aplikacje na iOS muszą działać w zasadzie tylko w dwóch rozdzielczościach – oryginalny iPhone i iPad / iPhone 4, aplikacje na Androida muszą obsługiwać wiele.
mówi Sander:
Nie obwiniałbym programistów ani projektantów aplikacji za zły interfejs użytkownika. W końcu większość z nich najpierw napisała wersję na iPhone'a i na pewno ma wszystkie zasoby (mapy bitowe itp.), ale w większości przypadków zakładam, że byli tak sfrustrowani UI SDK na Androidzie, że zdecydowali się stworzyć prostszy w żeby nie marnować zbyt dużo czasu. Wiem, że mam. Próba uzyskania właściwego wyglądu interfejsu użytkownika na platformie Android to proces prób i błędów, a w przypadku wersji próbnej oznacza to, że wypróbowujesz go na wszystkich możliwych rozdzielczościach urządzenia i napotykasz głównie błędy. Na iPhonie po prostu budujesz go w Interface Builder dla 2 rozdzielczości (320x480 i siatkówkę, która jest prawie identyczna z iPadem) i gotowe.
A oto jak wyglądają wszystkie te rozdzielczości urządzeń, dzięki uprzejmości Nick w AnIdea :

Rozdzielczości ekranu popularnych telefonów z systemem Android
Rozwój dla tak szerokiej gamy rozmiarów ekranów urządzeń i proporcji obrazu oznacza, że nie tylko niemożliwe jest stworzenie perfekcyjnych projektów dla interfejsów Androida, ale nie ma nawet żadnej gwarancji, że dany interfejs można skalować, aby pasował do konkretnego ekranu. To sprawia, że programowanie na urządzenia z systemem Android bardziej przypomina projektowanie stron internetowych niż projektowanie interfejsu aplikacji. Wyzwanie na taką skalę wymaga najlepszej biblioteki interfejsu użytkownika, jaką może zapewnić Google – jednak wydaje się, że jest odwrotnie.
Śledź Mims na Twitterze lub skontaktuj się z nim przez e-mail .