HTML5 + JQueryMobile = Mobile Application

Przed twórcą aplikacji mobilnej stawia się znacznie więcej barier niż przed developerem aplikacji desktopowej. Heterogeniczność platform sprzętowych i software’owych daję się tutaj jeszcze bardziej we znaki niż w innych przypadkach. Dzisiaj kilka słów o nieco odmiennym podejściu do tworzenia aplikacji mobilnych.

JQueryMobile

Jednym ze sposobów na minimalizację ryzyka zwiazanego z tym zróżnicowanym środowiskiem jest stworzenie aplikacji mobilnej z wykorzystaniem frameworka jQuery Mobile. Technologia ta znaczaco redukuje wysilek zwiazany ze stworzeniem interfejsu użytkownika na wield platform. Jedyna czynnoscia jaka nam zostaje jest zakodowanie struktury widoków przy pomocy HTMLa oraz logiki biznesowej w JavaScript. Po stworzeniu w ten sposób głównej części apalikacji pozostaje nam wykorzystanie natywnej technologii urzadzenia mobilnego do opakowania tego co zrobiliśmy wcześniej.

Aplikacje w HTML5 mają przewagę nad natywnymi w kilku punktach:

  • w przypadku prostych aplikacji ponosimy dużo mniejszy nakład pracy na stworzenie aplikacji działającej pod iOS’em oraz Android’em
  • pewne rzeczy związane z implementacją widoków prościej jest zrobić w HTML niż natywnie
  • w razie czego można ten kod HTML wykorzystać do stworzenia aplikacji webowej uruchamianej na zwykłym komputerze (MacBook, PC)

Jak pewnie myślicie, gdyby ta technologia (HTML5+JS) była doskonała, to po co ludzie pisali by soft mobilny w technologiach natywnych… i macie rację. W aplikacjach mobilnych w HTML5 spotykamy się z szeregiem ograniczeń i problemów nieobecnych, gdy korzystamy z technologii natywnych (Objective-C na iOS, Java na Android).

Oto tylko pobieżna lista problemów, z którymi trzeba się zmierzyć:

  • brak bezpośredniej integracji ze sprzętem: system plików, aparat, kamera, akcelerometr, baza danych, itp
  • brak możliwości optymalizacji aplikacji poprzez zrównoleglenie pewnych operacji na wątkach
  • dużo mniejsza wydajność, co skutkuje znacznie słabszym useability, wolniejszym działaniem aplikacji, problemami z pamięcią, itp.
  • różnice w szybkości aplikacji (gdy przyjmiemy, że aplikacjia na iOS to 100%, ta sama aplikacja na podobnej platformie sprzętowej na Android będzie działała z szybkością 50%)
  • zwiększony nakład pracy, by otrzymać pewne „efekty” które w technologiach natywnych mamy do dyspozycji „od ręki”
  • i wiele, wiele innych

Decydując się na implementację aplikacji mobilnych w HTML5 należy dokładnie przemyśleć swoją decyzję i być pewnym, że w/w ograniczenia nie stanowią dla naszego projektu zagrożenia.

Dodaj komentarz

This site uses Akismet to reduce spam. Learn how your comment data is processed.