Mobilne web aplikacije kao alternativa iOS, Symbian i Android aplikacijama - imaju li smisla?

Mobilne web aplikacije kao alternativa iOS, Symbian i Android aplikacijama – imaju li smisla?

Cilj svakog izdavača mobilnih aplikacija je pokriti što više potencijalnih korisnika. Obzirom da je današnje mobilno tržište po broju korisnika fragmentirano na nekoliko jakih igrača, kako ćete kvalitetno pokriti što više mobilnih platformi? U zadnje vrijeme sve se više tvrtki poput 37signals i Facebooka oslanja na mobilne web aplikacije kao alternativu nativnim aplikacijama. Web ili nativna aplikacija, pitanje je sad...

Cilj svakog izdavača mobilnih aplikacija je pokriti što više potencijalnih korisnika. Obzirom da je današnje mobilno tržište po broju korisnika fragmentirano na nekoliko jakih igrača, kako ćete kvalitetno pokriti što više mobilnih platformi?

U zadnje vrijeme sve se više tvrtki poput 37signals i Facebooka oslanja na mobilne web aplikacije kao alternativu nativnim aplikacijama. Web ili nativna aplikacija, pitanje je sad.

Nativne mobilne aplikacije su aplikacije izrađene koristeći SDK i programski jezik određene mobilne platforme. Glavna karakteristika nativnog razvoja aplikacija je da je tako napravljene aplikacije uglavnom teško (ili gotovo nemoguće) prebaciti na drugu platformu, bez da se kompletan programski kod napiše ispočetka.

Serijom članaka o razvoju mobilnih aplikacija za Android, Symbian, iPhone i druge mobilne platforme Netokracija vas uvodi uz vodeće hrvatske stručnjake za mobilne i internetske tehnologije u svijet appova.

Od planiranja i izrade do promocije i slaganja korisničkog sučelja, u tome nas podržava Ovi by Nokia na kojemu možete naći pregršt mobilnih aplikacija kao i objaviti vlastitu.

Pristupom web mobilne aplikacije išao je 37signals za svoj Basecamp Mobile. Iako imaju niz nativnih mobilnih klijenata koje ne održavaju sami, vlastiti mobilni proizvod su razvijali kao mobilni web jer kažu da ne žele razvijati i održavati posebni klijent za svaku platformu, niti biti ovisni o tome da će ih sutra Apple tražiti primjerice 30 posto prihoda od njihove usluge. Za web mobilnu aplikaciju odlučio se i Facebook, koji je rekao da što se tiče tablet tržišta neće razvijati nativnu iPad aplikaciju nego planiraju razviti HTML5 rješenje.

Ciljate li iOS, aplikaciju ćete razvijati koristeći iOS SDK, a programski kod pisati u programskom jeziku ObjectiveC. Nakon toga, ako ćete htjeti lansirati verziju aplikacije i za Android uređaje, morat ćete razvijati u Javi koristeći Android SDK. Ako ćete htjeti pokriti i Symbian uređaje, morat ćete razvijati u C++u koristeći QT Creator i tako se priča dalje nastavlja za sve druge platforme: BlackBerry, Windows Phone 7, webOS, bada..

Najveća prednost nativnih aplikacija jest što su izrađene po mjeri za zadanu platformu, dakle daju najbolji rezultat koji je moguće ostvariti na toj platformi. Nedostatak ovog pristupa je visok trošak razvoja i održavanja nekoliko različitih verzija aplikacije.

Ne tako davno, mobilni telefoni imali su tragično loše implementirane preglednike, sjetimo se samo WML-a i sličnih standarda. Danas je situacija na polju mobilnog browsinga drastično bolja te mobilni internetski preglednici podržavaju većinu funkcionalnosti kao i njihovi desktop ekvivalenti, samo na manjem ekranu i s manje procesorske snage.

Odlučite li se za web aplikaciju, framework će vam pomoći...

Napredak u mobilnim internetskim preglednicima danas omogućava developerima da stvore mobilne web aplikacije koje su upotrebljive na razini nativnih aplikacija. Slična situacija se u PC segmentu događala prije nekoliko godina, kad se pojavio Gmail i slični servisi koji su dovoljno dobro radili u internetskom pregledniku tako da niste morali instalirati aplikaciju na svoje računalo.

Mobilne web aplikacije se ne trebaju shvaćati kao “optimizirane” verzije postojećih web stranica ili web aplikacija. Riječ je o potpuno novim aplikacijama izrađenim najčešće koristeći alate poput JQTouch, Sencha Touch ili jQuery mobile. Dakle, ako krenete izrađivati mobilnu web aplikaciju, vjerojatno da ćete morati dobar dio koda napisati ispočetka, jedino što ćete moći koristiti poznate tehnologije – HTML, Javascript i CSS.

HTML5-4-3-2-1

Većinu ovih naprednih mogućnosti koje omogućuju izradu mobilnih web aplikacija koje su u rangu s nativnim nazivaju se HTML5. To je u biti adekvatan termin koji podrazumijeva CSS3, Geolocation, Web Storage, Application cache i druge funkcionalnosti, kao što je prije nekoliko godina AJAX bio adekvatan termin za objasniti bilo kome javascript interakcije unutar web stranice.

Ključni element koji je omogućio razvoj mobilnih web aplikacije je prihvaćanje Webkit browser enginea kao svojevrsnog standarda na gotovo svim mobilnim platformama. Dakle iOS, Android, bada, Blackberry, webOS – svi oni koriste Webkit kao rendering engine.

Dobar dio funkcija koje ćete koristiti su specifične za Webkit, dakle u određenom trenutku više nećete razvijati prema HTML5 specifikaciji nego prema Webkit implementaciji. Trenutno vam to garantira najveću kompatibilnosti na različitim platformama. Podršku za HTML5 su uglavnom usvojile sve platforme osim Windows Phone 7.

Native ili web?

Diskusija je već toliko prožvakana da čak postoji simpatičan (kako kome) video spot. Odabir između native i web-based mobilnih aplikacija ne predstavlja crno-bijelu situaciju jer postoji dovoljno dobrih argumenata i za jedno i drugo.

Korisničko iskustvo

Performanse aplikacije kao i dostupne mogućnosti (pristup akcelerometrima, kameri, snimanju i reprodukciji zvuka itd..) uvijek su na strani nativnih aplikacija.

Ipak, obzirom na brzinu uređaja i Webkit implementacija, danas se doista čuda mogu raditi kao web aplikacije i za content aplikacije može se postići solidna brzina i look and feel, barem na iOS uređajima. S Android uređajima se već pojavljuje više problema – telefoni su različitih performansi i dimenzija ekrana, CSS tranzicije nisu hardverski akcelerirane i općenito je browser lošiji nego na iPhoneu, tako da o tome trebate voditi računa kod odabira.

Nativne aplikacije su izrađene po mjeri za pojedinu platformu i uvijek će raditi brže, bolje i izgledati ljepše od web aplikacija. Dobar primjer toga je odlična slovenska aplikacija Toshl koja ima razvijene nativne klijente za sve glavne platforme, a koji su korisničkim iskustvom prilagođeni svakoj pojedinoj platformi što je najbolje moguće rješenje.

ROI odnosno return on investment

Povrat investicije uložene u razvoj je bitan. Ako jednom izradite mobilnu web aplikaciju, moći ćete pokriti puno više platformi za manji trošak i uz puno brži “time to market” što su sve vrlo jaki argumenti jer si širite tržište, a usput i štedite.

Također, pristupačnost developerima je točka koje ide u prilog web aplikacijama jer je puno developera već zna HTML/JS/CSS te su im to pristupačnije platforme od ObjectiveC-a, Android Jave i drugih.

U teoriji to lijepo zvuči, no jesu li zbilja troškovi manji i vrijeme izrade kraće? Ovisi o slučaju i situaciji. Ako ste perfekcionist toliko vremena ćete potrošiti da popravite određene greške kojih ne bi bilo da ste radili native aplikaciju. Vjerojatno ćete morati prilagođavati i koncept svoje aplikacije te morat ćete prihvatiti da neke stvari jednostavno ne možete napraviti i morat ćete raditi kompromise. Također, dosta vremena ćete izgubiti na popravljanje cross browser ili cross device problema.

Poslovna perspektiva

Glavno svojstvo mobilnih web aplikacija je da se ne moraju i ne mogu smjestiti u neki app store, nego je dovoljno posjetiti link. Nešto što je prednost recimo Gmaila na računalu (jeej, ne moram ga instalirati), na mobilnoj platformi i nije tolika prednost. Korisnici pametnih telefona su uglavnom dobro upoznati skonceptom trgovine mobilnih aplikacija i znaju da tamo nalaze aplikacije. Druga prednost app storea koje je vrlo bitna je da vam daje mogućnost monetizacije aplikacija kroz prodaju ili in app purchase.

Za ovaj problem doduše postoji i zaobilazno rješenje, a zovu se hibridne mobilne aplikacije. Riječ je o nativnoj aplikaciji koja u WebView komponenti izvršava neku web aplikaciju.

Pitanje tržišnog udjela je isto vrlo zanimljivo i generalno tu argument ide na stranu mobilnih web aplikacija. S mobilnom web aplikacijom možete pokriti puno više uređaja i potencijalnih platformi nego s nativnom aplikacijom, ali ćete morati raditi prilagodbe za svaku od njih.

Pratite (mobilni) pravac.

Ako svoj proizvod i uslugu jako vežete uz bilo koju platformu, postajete nešto što se naziva digital sharecropper, dakle kopate i orete po Appleovoj, Googleovoj ili bilo čijoj plantaži besplatno, dok s mobilnom web stranicom niste vezani uz određenu platformu.

Ako imate dovoljni budžet da razvijate, ali i održavate paralelno verzije aplikacije za nekoliko OS-a, onda sigurno možete ići na native varijantu, jer ćete u konačnici dobiti kvalitetniji proizvod. U suprotnom, ako aplikacija uglavnom obavlja manipulaciju podacima i ne pristupa naprednim funkcijama telefona, možda je odabir web tehnologija kao razvojne platforme dovoljno dobar za vas. Odluka će vam stoga ovisi o pojedinom slučaju, stoga razmislite o vama najbitnijim faktorima i donesite informiranu odluku.

ponuda

Komentari

  1. Damir

    Damir

    24. 03. 2011. u 11:20 am Odgovori

    Nema tu nikakvog pitanja. HTML5/Web app’s nisu ni blizu native aplikacijama i to ce tako ostati jos sigurno jedno pet godina.

    Native app ima bolji user expierence, vise mogucnosti i naravno puno bolje izgleda (nije zalijepljem u browseru).

    Ako imas mogucnosti da napravis native app onda pravi native app.

  2. Edi Budimilić

    Edi Budimilić

    24. 03. 2011. u 11:59 am Odgovori

    Nativna web browser kontrola koja otvara webapp je moj top choice za poslovne aplikacije. Uz dobar odabir frameworka i web aplikacija može raditi gotovo jednako kao i nativna. Naravno, isključujem game development.
    Pet minuta izrađuju takve “hibridne” aplikacije. Čak smo se i mi okušali i radi zadovoljavajuće.

    • Tomislav Car

      Tomislav Car

      24. 03. 2011. u 1:04 pm Odgovori

      Trenutno je situacija takva da može raditi s nekih 80-90% učinkovitosti, responzivnosti i look and feela kao nativna – ali na iOS uređajima.

      Na Androidu ćeš se pomučiti sa manjim i slabijim uređajima (kao recimo X10 mini ili HTC Tatoo), a ni druge platforme nisu baš blistave, tj.negdje su na razini Androida.

      Ono što je bitno u cijeloj priči je ograničenja HTML5 pristupa jasno u startu iskomunicirati klijentu, jer klijenti nisu dovoljno educirani i misle da će im aplikacija svugdje raditi jednako, uglavnom imaju previsoka očekivanja.

      Ne želiš se dovesti u situaciju da vodiš ovakav razgovor s klijentom:
      – “Žale nam se customeri, aplikacija loše radi na HTC Wildfire”
      – “Ali znate, taj telefon ima 528 MHz procesor i nema hardverski akceleriran CSS”
      – “Ali vi ste nam rekli da HTML5 pristupom ćemo pokriti sve iOS i Android uređaje?”

  3. @tpodmani

    @tpodmani

    24. 03. 2011. u 1:21 pm Odgovori

    Sviđa mi se ovaj članak!

    Prije nekog vremena i ja sam se bavio tim razmišljanjem, o čemu sam pisao na http://toni.podmanicki.com/blog/izrada-web-stranica-i-aplikacija-za-iphone i za tu prigodu napravio web stranicu prilagođenu iPhone uređaju (nisam imao vremena prilagoditi CSS za druge uređaje, ali sam napravio primjer kako izgleda za one koji dolaze s desktop browsera).

    Upravo kao što si rekao u zaključku “Odluka će vam stoga ovisi o pojedinom slučaju, stoga razmislite o vama najbitnijim faktorima i donesite informiranu odluku.” to je sva mudrost oko vječite dileme web vs native app.

  4. Dino

    Dino

    24. 03. 2011. u 10:24 pm Odgovori

    odlično kao i uvijek od tebe.

    zanimljivo je da su se jaki igrači opredjelili za html a manji za native. možda su veliki zato i veliki jer štede pare, makar njihovo ponašanje tako često ne izgleda.

    • Ivan Galic

      Ivan Galic

      25. 03. 2011. u 11:08 am Odgovori

      I kod velikih igraca se stvari razlikuju od slucaja do slucaja. Facebook se odlucio za web app, twitter ima nativne klijente za sve platforme. Mislim da se tu ne radi toliko o stednji koliko o drugim faktorima – ako za primjer uzmemo twitter i facebook, twitteru je user experience i dizajn uvijek bio veci prioritet nego facebooku, sto se vidi i iz njihovih klijenata. Osim toga, kao sto u clanku pise radi se i o izbjegavanju ovisnosti o vlasniku OS-a i pogotovo u slucaju Applea, njegove hirovitosti.
      Mislim da se stvari krecu slicnom putanjom kao na PC-u; do prije par godina je cijeli web bio samo hrpa staticnih web stranica s informacijama, dok se danas tu moze naci ogroman niz aplikacija koje su prije bile rezervirane za desktop. Ipak, neke stvari ostaju nativne i vjerojatno ce tako biti jos neko vrijeme. Vidjet cemo 🙂

Odgovori

Tvoja e-mail adresa neće biti objavljena.

Popularno

Novost

Apple Pay konačno i službeno u Hrvatskoj uz Revolut, Monese…

Svoju Revolut ili Monese Mastercard karticu od danas možete staviti u Apple Wallet i plaćati pomoću pametnog sata ili iPhonea.

Tehnologija

Zašto Facebookove Libra i Calibra nisu pravi blockchain, a trebaju ih se bojati najviše – banke?

Svaka osoba na svijetu koja koristi Facebook, Instagram ili WhatsApp će uskoro nesumnjivo imati i svoj crypto novčanik, što je gotovo trećina svih ljudi na svijetu.

Intervju

Prvo smo tržište za Settle, nordijski sustav koji će POS zamijeniti vašim mobitelom?

Pionir nordijskog plaćanja, Auka uz Sberbank Hrvatska donosi nam Settle aplikaciju za mobilna plaćanja. Hoćemo li Hrvatsku pamtiti kao prvo tržište budućeg Alipaya Europe?

Što ste propustili

Zabava i zanimljivosti

Sve što trebate znati o YouTube Music (koji je upravo stigao u Hrvatsku!)

Nije nepoznanica da se YouTube u regiji još pretežno koristi kao platforma za slušanje glazbe. Sad kad je i u Hrvatsku stigao YouTube Music, servis posvećen upravo glazbi, otkrivamo kako se s njim snaći i vrijedi li ga uopće isprobati.

Startupi i poslovanje

Infinum, Microblink i RBA: Zlatno doba fintecha uživat će oni koji iskoriste suradnje s bankama

PSD2 u rujnu donosi značajne promjene za svijet financija pa nije ni čudno da već postoji preko 10 tisuća fintech startupa u svijetu. Gdje je tu prilika za još jedan, iz Hrvatske, razgovarali smo sa stručnjacima Raiffeisen banke i uspješnim domaćim poduzetnicima koji čine žiri nadolazećeg Elevator Lab Challengea.

Vodič

Kakav sadržaj iznajmljivači trebaju objavljivati na Instagramu?

Instagram je prošle godine prešao milijardu korisnika. Danas ih je i više. A ogroman dio sadržaja koji se tamo nalazi posvećen je upravo putovanjima i iskustvima koja se na njima doživljavaju.

Vodič

Airbnb, Booking, Hostelworld? Kako da digitalni gosti dođu do vašeg smještaja?

Ako nije na internetu, postoji li zaista? Ako pitate iznajmljivače koji koriste moderne platforme Booking i Airbnb kako bi svojim gostima ponudili najjednostavniji mogući način rezervacije smještaja - odgovor je zasigurno odlučno "ne".

Vodič

Jesu li pretplatničke kutije novi model prodaje za OPG-ove?

Kozmetika, proizvodi za majke i bebe, knjige,preparati za kućne ljubimce, sastojci za kuhanje, viski - ovo su samo neki tipovi proizvoda koje danas možemo naći u popularnim pretplatničkim kutijama. No ovaj model poslovanja može odlično poslužiti još jednoj skupini (malih) poduzetnika: OPG-ovima.

Kultura 2.0

Kandidatima za hrvatske predsjedničke izbore ove godine pomaže Reddit – i to memovima

Mogu li memovi na Redditu utjecati na predsjedničke izbore u Hrvatskoj? Zašto ne bi mogli!