Odluka o tehnologiji donosi se u prvom tjednu, a plaća se sljedeće tri godine. Evo što stvarno razlikuje tri uobičajene opcije.

Što je što

  • Native — dvije odvojene aplikacije, jedna u Swiftu za iOS i jedna u Kotlinu za Android. Najbolje performanse, dvostruki posao.
  • React Native (Expo) — jedna baza koda koja se prevodi u prave native aplikacije za obje platforme. Danas je to zadani izbor za većinu poslovnih aplikacija.
  • PWA — web stranica koja se ponaša kao aplikacija. Otvara se u pregledniku, može se dodati na početni zaslon, ne prolazi kroz storeove.

Usporedba

Native React Native PWA
Relativna cijena 160 do 180 % 100 % 50 do 70 %
Kamera i senzori Potpun pristup Potpun pristup Ograničen
Rad bez interneta Potpun Potpun Ograničen
Push obavijesti Da Da Slabije na iOS-u
U trgovinama aplikacija Da Da Ne
Objava izmjene Dani, kroz recenziju Dani, dio izmjena odmah Odmah

Kada birati koju

PWA — kad aplikacija ne mora biti aplikacija

Ako korisnik radi za stolom, ima internet i vaš proizvod je u biti sučelje nad bazom podataka, PWA je najbrži i najjeftiniji put. Nema recenzija, nema čekanja, izmjena je živa čim je objavite. Naš Kolektro je upravo takav slučaj — knjigovođa radi za računalom, a klijent koji šalje dokument otvara poveznicu bez ijedne instalacije.

PWA otpada čim vam treba pouzdan rad bez mreže, ozbiljan pristup kameri ili prisutnost u trgovini aplikacija zbog povjerenja kupaca.

React Native — zadani izbor za poslovne aplikacije

Jedna ekipa, jedna baza koda, obje platforme. Za aplikaciju koja ima popise, forme, kameru, prijavu i sinkronizaciju — što je opis devedeset posto poslovnih aplikacija — razlika u odnosu na native je neprimjetna korisniku, a razlika u cijeni je otprilike duplo.

Naš Handover radi na React Nativeu iako je gotovo cijela aplikacija kamera i rad bez mreže — dakle upravo ono za što se tradicionalno preporučuje native. Radi bez problema.

Native — kad je aplikacija sam proizvod

Native se isplati u tri slučaja: kad je grafika ili obrada u stvarnom vremenu srž proizvoda (igre, obrada videa), kad trebate hardver na koji međuplatformski alati kasne, ili kad imate toliko korisnika da vam se isplati dvostruka ekipa radi zadnjih nekoliko posto uglađenosti.

Za većinu naručitelja u Hrvatskoj native je preskup odgovor na problem koji nemaju. Ako niste sigurni trebate li ga, ne trebate ga.

Gdje jeftinija opcija naplati razliku

Uštedu na tehnologiji obično plaćate kasnije, i to na tri načina:

  • PWA i iOS. Push obavijesti i rad bez mreže na iPhoneu su i dalje slabija priča nego na Androidu. Ako su vam obavijesti ključne za korištenje proizvoda, PWA nije ušteda nego rizik.
  • Prelazak kasnije. Migracija s PWA na native aplikaciju nije nadogradnja nego novi projekt. Ako znate da ćete za godinu dana trebati aplikaciju u storeu, nemojte dvaput plaćati.
  • Rijetke biblioteke. React Native pokriva sve uobičajeno. Kad naiđete na specifičan hardver, netko mora napisati most prema native kodu — to je jednokratan, ali stvaran trošak.

Praktičan redoslijed odlučivanja

  1. Mora li raditi bez interneta ili koristiti kameru ozbiljno? Ako da, otpada PWA.
  2. Mora li biti u trgovini aplikacija zbog povjerenja ili naplate? Ako da, otpada PWA.
  3. Je li grafika ili obrada u stvarnom vremenu srž proizvoda? Ako da, ide native.
  4. U svim ostalim slučajevima — React Native.

Ako niste sigurni gdje vaš projekt pada, u tekstu o tome što ulazi u cijenu aplikacije razložili smo faze pa se lakše procijeni gdje odlazi budžet.