Menu
PL

W jakiej technologii tworzyć aplikacje mobilne

Trzy sposoby tworzenia aplikacji mobilnych

Gdy dostajemy oferty od różnych dostawców oprogramowania mobilnego stajemy przed trudnym wyborem. Sama cena nie jest najlepszym punktem odniesienia, chociaż pozwala odrzucić oferty skrajne. Na czym się skupić, gdy zostanie kilka porównywalnych propozycji? Jednym z wariantów decyzji jest technologia do tworzenia aplikacji mobilnych.

Są trzy zasadnicze sposoby projektowania i tworzenia aplikacji mobilnej:

  1. Wariant w 100% natywny. Jest to równoważne z poniesieniem większych kosztów, które wynikają z przyczyn opisanych tutaj.

  2. Aplikacje hybrydowe, pisane w HTML5, całkowicie uwspólnione dla obu platform.

  3. Aplikacje natywne ze współdzielonym kodem, np. z wykorzystaniem platformy Xamarin.
    Zdecydowanie warto zapytać swoich potencjalnych usługodawców z jakiej technologii korzystają, gdyż decyzja zły wybór technologii może powodować jej zły rynkowy odbiór, ograniczać rozwój, a nawet uniemożliwiać zastosowanie konkretnych rozwiązań.

Aplikacje natywne

Aplikacje natywne wymagają osobnego developmentu dla każdej platformy. To oznacza, że cały proces przygotowania aplikacji musi zostać podwójnie wykonany. Podobnie każdy błąd musi zostać podwójnie naprawiony, a każda zmiana wymaga implementacji na każdej platformie oddzielnie. Jest rozwiązanie akceptowalne jedynie dla przypadków, gdzie projekt jest wyspecyfikowany w 100%, z rozbudowaną dokumentacją, scenariuszami użycia, dokładnym opisem interface’u, planami testów itd. W praktyce takie scenariusze nie występują, stąd w nowych projektach natywne technologie są wykorzystywane przede wszystkim tam, gdzie z uwagi na wysokie wymagania grupy odbiorców względem animacji / jakości UI ważne jest wykorzystanie wiedzy bardzo doświadczonych developerów iOS / Android.

Aplikacje hybrydowe, HTML5

Aplikacje hybrydowe są rozwiązaniami służącymi do budowania jednej aplikacji z użyciem technologii webowych i ‘opakowania jej’ w aplikację mobilną, która możliwa jest do wdrożenia na smartfonach. Świetnie sprawdzają się przy bardzo prostych scenariuszach i formularzach, dla użytkowników, którzy nie mają wysokich wymagań dotyczących wyglądu aplikacji. Podstawową wadą takich rozwiązań jest problem w odbiorze przez użytkowników, którzy często cenią sobie charakterystyczne dla swojej platformy przyciski, czy sposoby nawigacji. Dlatego aplikacje zbudowane w HTML5 pod kątem UX / UI często wyglądają jak spaghetti różnych szablonów, które są trudne w obsłudze dla użytkownika / klienta. W czasach, gdy 79% konsumentów daje tylko jedną szansę nowej aplikacji, takie kompromisy są w konsekwencji absurdalnie drogie dla biznesu.

Dodatkową wadą jest niska kompatybilność pod kątem integracji z zewnętrznymi usługami. Jeżeli nasza aplikacja ma robić zdjęcia, pobierać płatności, komunikować się z kilkoma serwerami, przyjmować notyfikacje itp. to jest duża szansa, że HTML5 sobie nie poradzi.

Xamarin

Xamarin to połączenie zalet tworzenia aplikacji na współdzielonym kodzie z jakością rozwiązań natywnych. W ramach tej platformy od 75% do 95% kodu jest współdzielone, w związku z czym implementacja jest o wiele szybsza i mniej obfituje w błędy. Dodatkowo Xamarin oferuje pełne wsparcie dla integracji z zewnętrznymi usługami (np. SDK PayU do płatności) i pozwala w błyskawicznym czasie zbudować bardzo stabilny produkt. Nie bez znaczenia jest, że platforma Xamarin operuje na kodzie C#, optymalnym biznesowo rozwiązaniu, co zdaniem niektórych przekłada się na szybkość działania lepszą nawet niż w przypadku aplikacji natywnych.

Xamarin vs. Native vs. HTML5

Porównanie technologii wypada jednoznacznie korzystnie na rzecz Xamarina.

HTML5 Natywne Xamarin
Koszty developmentu najniższe wysokie niskie
Czas developmentu najkrótszy najdłuższy krótki
Szybkość działania szybka natywna najszybsza
Rozmiar aplikacji niski optymalny średni
UX / UI webowy natywny natywny
Integracje ograniczone pełne pełne

Prawdą jednak jest też, że jeszcze niedawno była to technologia wschodząca, co zawsze musi rodzić pewne ryzyko w zakresie dotrzymania terminu realizacji z uwagi na napotkanie nowych błędów. Jednak po przejęciu przez Microsoft Xamarin stał się w pełni dojrzałą platformą, dostępną dla setek tysięcy programistów .Net na całym świecie. Oznacza to, że Xamarin pozwala nie tylko na tańszą produkcję aplikacji, lecz również na jej dalsze utrzymanie i rozwój przez sprawdzonych programistów. Z powodu tak wielu przewag konkurencyjnych oferty z wykorzystaniem Xamarina będą konsekwentnie wygrywać na rynku, który dzięki temu otworzy się na większą liczbę mobilnych projektów.



_podobało Ci się?

Łukasz

IT product manager, odpowiada za współpracę z klientami, posiada wieloletnie doświadczenie w prowadzeniu projektów internetowych i startupów, zebrane m.in. w K2, Audiotece, Appetiq i projekcie REBEL.

twórców zapraszamy do kontaktu

Łukasz Kosman

+48 605 100 922

lukasz@leancode.pl