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.

Sukladno članku 94. Zakona o elektroničkim medijima, komentiranje članaka na Netokraciji dopušteno je samo korisnicima koji ostave svoje ime i prezime te mail adresu i prihvate pravila ponašanja.

Pravila ponašanja

Na Netokraciji za vas stvaramo kvalitetan, autorski potpisan sadržaj i zaista se veselimo vašim kvalitetnim, kontruktivnim komentarima. Poštujmo stoga jedni druge prilikom komentiranja, kao i Zakon, držeći se sljedećih pravila ponašanja:

  • Ne budite 💩: Nema vrijeđanja, diskriminiranja, ni psovanja (osim ako nije osobni izričaj, ali onda neka psovka bude općenita, a ne usmjerena prema nekome). Također, upoznajte se sa stavkom 2. članka 94. Zakona o elektroničkim medijima prije no što ostavite komentar.
  • Samo kvalitetna rasprava, manje trolanja: Ne morate se ni sa kim slagati, ali budite konstruktivni i doprinesite raspravi! Svako trolanje, flameanje, koliko god "plesalo" na granici, leti van.
  • Imenom i prezimenom, nismo Anonymous 👤: Autor sadržaja stoji iza svog sadržaja, stoga stojite i vi iza svog komentara. Koristimo ime i prezime te pravu email adresu.

Kako koristimo podatke koje ostavljate? Bacite oko na našu izjavu o privatnosti.

Sve ostale komentare ćemo s guštom spaliti, jer ne zaslužuju svoje mjesto na internetu.

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

Vodič

Morate podnijeti zahtjev za novu osobnu iskaznicu? Evo kako izbjeći gužvu na šalteru

Završetkom pandemije došao je službeni kraj maskama, ali i mnogim identifikacijskim dokumentima pa tako i osobnim iskaznicama bez kojih ne možete boraviti u Hrvatskoj. Ovo znači samo jedno... ogromni redovi na šalterima.

Najava

Belma Gutlić: “Fokus s cijena kriptovaluta treba prebaciti na tehnologiju koja kriptovalute omogućava”

Danas se možemo pohvaliti da na našoj maloj sceni ne nedostaje konferencija vezanih uz blockchain i kriptovalute. Ipak, postoji jedan krovni naziv kojem se nitko dosad nije posvetio na jednak način, a koji možda zaslužuje i najviše pažnje.

Karijere

Tim McKeoun: “Ako želimo da se developeri razvijaju, moramo se pomiriti da će nekad biti manje produktivni”

"Developer Advocate" može postati svatko, ali uspjeh u tome će pronaći mali broj ljudi. Savjete kako općenito postati bolja podrška developerima, na ovogodišnjem QED-u podijelio je IBM-ov Tim McKeoun.

Što ste propustili

Obrazovanje

Studenti RIT Croatia kroz kolegij kreiraju stvarne projekte za Rimac Technology, INA-u, Async Labs… 

Domaće obrazovne institucije često se fokusiraju na teoriju, dok praksa ostaje na poslodavcima. RIT Croatia to mijenja svojim primjerom.

Novost

Potvrđeno: Google preuzeo hrvatski Photomath

Hrvatska aplikacija Photomath postaja je i službeno dio Googleovog portfelja. Tehnološki gigant godišnje akvizira desetak tvrtki, a ove je godine u akvizicijski plan ušao upravo hrvatski Photomath.

Izvještaj

Web3 Tales: Trenutno u web3 sferi ima prilika za sve, ali to ne znači da je web3 za svakoga!

Zašto ući u web3? Kako radi i razmišlja web3 stručnjak/inja? Koji kadrovi su traženi? Je li web3 karijera dugoročno sigurna? Što kad je bear, što kad je bull? Samo su neka od pitanja na koje su se tražili odgovori na prvoj Web3 Tales konferenciji u Muzeju suvremenih umjetnosti u Zagrebu.

Intervju

Iza scene: O dizajniranju evenata poput Porina i Future Tensea uz hrvatski 21 Productions

Dizajnirati velike događaje, konferencije ili televizijske emisije nije lak zadatak. Cijeli posao obuhvaća detaljne razgovore s klijentom i ljudima koji su specijalizirani za snimanje, zvuk ili rasvjetu. Tom procesu uvelike može pomoći jedna stvar, a to je 3D vizualizacija produkcijskog dizajna.

Novost

Google predstavio program za startupe: AI for Health, na koji se mogu prijaviti i Hrvati!

Ovaj hibridni program prvi je u nizu akademija Google for Startups Growth Academy koji je fokusiran na olakšavanje i skalabilnost startupima u inovacijama i rješavanju društvenih izazova pomoću umjetne inteligencije.

Tvrtke i poslovanje

Končar D&ST nakon revizije prema Mamforce standardu učvrstio zdravu i inkluzivnu organizacijsku kulturu

Glavne korporativne vrijednosti u tvrtki Končar D&ST su kontinuirana briga o zaposlenicima, uključivost, društvena odgovornost i ekološka održivost, a sada im se polaže sve sustavnija i promišljenija pažnja.