W
specyfikacji wymagań napisano „Aplikacja
mobilna mającą działać na
wszystkich dostępnych systemach operacyjnych”. Developer
dostawał gorączki (ma stać się człowiekiem-orkiestrą):
Obsłuży wtedy tylko 3 najbardziej popularne systemy. Do tego musi złamać zasadę DRY, bo interfejs użytkownika napisze 3 razy ten sam. A może wynajmie kilku specjalistów? Jak spełnić opisywane wymaganie pisząc kod jeden raz pod wszystkie możliwe systemy? Każdy przyzwoity system operacyjny jest wyposażony w przeglądarkę internetową współpracującą ze standardem HTML5. Można więc uruchamiać odchudzone i dostosowane do małych ekranów aplikacje przeglądarkowe. Takie mobilne aplikacje przybierają ostatnio na znaczeniu. Nie trzeba niczego instalować, aktualizować, a przede wszystkim działają one praktycznie na wszystkich systemach operacyjnych. Do tego w specyfikacji HTML5 dostajemy dostęp do aparatu fotograficznego urządzenia, lokalizacji geograficznej użytkownika (Geolocation API) oraz tzw. Web Storage dzięki któremu przeglądarka może zapisywać dane na urządzeniu np. w trybie offline. Aplikację przeglądarkową można dodać do ekranu głównego aplikacji. Od tego momentu odczucie w korzystaniu z niej nie różni się zasadniczo od zwykłej instalowanej w systemie aplikacji: Gdy stajemy przed takim wyborem warto zastanowić się nad następującymi zagadnieniami:
Rzeczywistości nie jest zero-jedynkowa. Oprócz wyboru pomiędzy dwoma wariantami są jeszcze hybrydowe aplikacje. Pomysł polega na osadzeniu kontentu webowego w aplikacji natywnej. Korzystamy wówczas z dobrodziejstw natywnych dodatkowo mając dostęp do kontentu webowego. Specjaliści szacują że do 2015 roku 80% aplikacji będzie hybrydowa. Jeśli planujesz implementację aplikacji przeglądarkowej zainwestuj w mobilną webową aplikację już teraz. Utrzymywanie oddzielnie części webowej i mobilnej będzie kosztowne gdy ta mobilna powstanie długo po webowej. Zaprojektuj komponenty tak aby były przydatne do wielokrotnego użycia, weź pod uwagę skalowalność interfejsu użytkownika. Przykłady implementacji: Jeżeli zależy Ci na szybkiej implementacji aplikacji mobilnej polecam skorzystać z gotowych frameworków do jej zbudowania. Może to być Sencha Touch, Kendo UI czy też szkielet, który ja wybrałem - Vaadin TouchKit z racji jego prostoty. Przykładowa aplikacja oparta na TouchKit'ie - Parking Demo zawiera zaimplementowane elementy takie jak położenie geograficzne klienta, obsługa aparatu fotograficznego, tryb offline, mapa, wykresy. |
Dla developerów > Aktualności >