47

Temat do dyskusji – To mobilny Facebook jest źle zaprojektowany czy sam Android?

Wczoraj pojawiła się na stronach Facebooka informacja, może niepozornie wyglądająca, ale niezwykle ciekawa ze względu na poruszany temat dostosowania coraz bardziej rozbudowanych aplikacji mobilnych do pracy na starszych urządzeniach. Wyzwania tego podjął się Facebook ze swoją aplikacją na Androida. Pokrótce, nowsze wersje Facebooka miały problem z Androidem 2.2 i 2.3, gdzie rozmiar bufora (obszar pamięci […]

fba
Wczoraj pojawiła się na stronach Facebooka informacja, może niepozornie wyglądająca, ale niezwykle ciekawa ze względu na poruszany temat dostosowania coraz bardziej rozbudowanych aplikacji mobilnych do pracy na starszych urządzeniach.

Wyzwania tego podjął się Facebook ze swoją aplikacją na Androida. Pokrótce, nowsze wersje Facebooka miały problem z Androidem 2.2 i 2.3, gdzie rozmiar bufora (obszar pamięci ze zbieranymi i przechowanymi informacjami, które finalnie mają się nam wyświetlić na ekranie smartfonu) ma maksymalnie 5MB, a najnowsze jego wersje już 16 MB. By poradzić sobie z tym problemem, Facebook skorzystał z wirtualnej maszyny dla Androida – Dalvik, która umożliwia bardziej wydajne działanie takich aplikacji na urządzeniach z mniejszą ilością pamięci i wolniejszymi procesorami.

Nie znam się za bardzo na programistycznych próbach, które opisuje FB na podlinkowanej stronie, jednak dzięki różnym modyfikacjom Androida udało się w końcu uruchomić najnowszą wersję Facebooka 2.0 na większości testowanych urządzeniach (70 różnych modeli). Co ciekawe, po drodze największy problem był z Samsungiem Galaxy S II, najpopularniejszym modelem z Gingerbread na pokładzie. Najwidoczniej w wyniku własnych modyfikacji Androida dokonanych przez Samsunga.

W rezultacie Facebookowi udało mu się stworzyć aplikację, która działa na większości dostępnych urządzeń na rynku. Z jednej strony chwali się takie podejście, by zapewnić dostępność swojego produktu, również na starszych modelach smartfonów, ale z drugiej strony powstaje też pytanie czy to było konieczne aby aplikacja ta rozrosła się, w przecież dość krótkim czasie, do takich rozmiarów, by konieczne były aż daleko idące modyfikacje tej platformy systemowej, nie zapewniając przy tym jakiś daleko idących zmian w działaniu czy nowych funkcji w samej aplikacji dla końcowego użytkownika.

android

Jeden z komentujących ten wpis, zauważa, że to być może Facebook był od początku źle zaprojektowany, a teraz takimi próbami dostosowuje się systemy (Android 2.3 i 2.2 to nadal wersja obecna na znacznej ilości urządzeń – ponad 50%), na które został wydany do działania na nich swojej aplikacji.

This is madness. Instead of admitting you had simply too many methods to manage (I can’t imagine what a mess the code must look like), you blindly moved forward, hacking away until you were lucky enough to find a way to make it work. Instead of a victory for hacking, I see this as a textbook example of how developers at Facebook refuse to acknowledge bad design decisions and continue to push forward instead of admitting they need to refactor and improve the architecture. If any design project requires too many specialized fixes (hacks) it’s a clear sign you’re doing it wrong and there’s likely a better solution. Sure you managed to plug the holes in your paper dinghy, but that doesn’t mean the smallest wave won’t sink you.

Chcielibyśmy poznać Wasze zdanie na ten temat, jak i poznać Wasze wrażenia, czy odczuliście w ogóle poprawę działania aplikacji Facebooka od wydania tej wersji (grudzień 2012) zarówno na nowszych modelach, jak i na starszych z Androidem 2.2,3?