RAZGOVOR: DOMAGOJ PAVLEŠIĆ

'Nitko ne voli sporu aplikaciju, a mobiteli nisu računala'

14.04.2014 u 10:56

Bionic
Reading

'Ako želite nešto zaista dobro, dugovječno i uspješno, nema druge nego konstantno analizirati korištenje aplikacije, osluškivati korisnike i unapređivati aplikaciju', kaže jedan od zapaženijih domaćih razvojnih programera

Domagoj Pavlešić je razvojni programer s 15 godina iskustva, fokusiran na aplikacije za Windows Phone i Windowse, Azure i ASP.NET, kao SQL, HTML/CSS, JavaScript, jQuery i AJAX.


Pavlešić je dosad napravio dvadesetak aplikacija za Windows Phone i Windows 8. Neke je odradio posve sam, neke s kolegama, a neke u većim međunarodnim timovima.

Direktor je tvrtke dizzy.hr, koja se bavi razvojem aplikacija za web i mobilne uređaje. Upravo su oni napravili aplikaciju za Windows 8.1 za časopis Bug, o čemu smo pisali, a bio je i jedan od zapaženijih predavača tijekom nedavno završene konferencije Windays 14

'Unutar firme radimo dvije vrste aplikacija - za naručitelje i za vlastiti gušt. Ove prve, ma koliko nam bile drage, ipak nisu toliko blizu srcu kao vlastite, pa bih među potonjima izdvojio CroWeather.

Jest da je malo starija, no radi se i dalje o najpopularnijoj hrvatskoj aplikaciji koja je mnoge od kiše spasila, a meni otvorila brojna vrata i prilike. Aplikacija za vremensku prognozu ima zaista puno, no ova je zgodna po tome što prognozu dobiva od lokalnih meteorologa i pokazala se prilično točnom na našem području', kaže Pavlešić.

Koliko treba za izradu aplikacije?

Ovisno o aplikaciji, za izradu i razvoj u prosjeku treba oko mjesec dana. No to treba uzeti s velikom rezervom - neke trivijalne aplikacije bile su gotove za dan-dva, dok se druge konstantno razvijaju i nikada zapravo nisu gotove.

Potonje je, na neki način, točno za sve aplikacije. Prošlo je doba kad se aplikacija jednom razvije i više ne dira. Ako želite nešto zaista dobro, dugovječno i uspješno, nema druge nego konstantno analizirati korištenje aplikacije, osluškivati korisnike i unapređivati aplikaciju. Naravno, u različitim fazama zrelosti aplikacije angažman može biti (i najčešće jest) znatno manji nego prilikom same izrade.

Kolik i kakav tim radi na razvoju aplikacije?

Idealan tim sastoji se od developera, dizajnera i testera. Ako je projekt veći, onda broj ljudi raste, s time da obično treba više developera nego dizajnera. To znači i dosta dodatnog posla radi sinkronizacije unutar tima, pa ulijeće i voditelj projekta (bilo u vidu već neke osobe unutar tima, bilo u vidu dodatnog čovjeka izvana).

S druge strane, ako je projekt jednostavan ili osoba talentirana na više područja, može ga odraditi i pojedinac, a nekakvo interno testiranje se ponekad preskače i ide na javni beta test.

Obično će aplikaciju prvo skicirati i nacrtati dizajneri, da bi ju zatim preuzeo developer i odradio razvojni dio posla. Takav je postupak optimalan za aplikacije manje i srednje veličine.


Po čemu su aplikacije za Windows Phone i Windows 8.x specifične?

Osim po razvojnim alatima, svakako po dizajnu koji je bitno drukčiji od ostalih platformi. Iako se na prvi pogled čini jednostavan, ima puno svojih zakonitosti i jednako toliko načina da se nešto krivo napravi, što se može vidjeti na gomili postojećih aplikacija.

Mislim da je najbitnije imati korisničko iskustvo platforme, da ti jednostavno pod kožu uđe kako stvari funkcioniraju i da doživiš (ne)pisana pravila korisničkog iskustva. Kad mi se netko predstavi kao programer za Windows Phone, a izvadi iz džepa iPhone, jednostavno ga ne doživim ozbiljno. K'o mesar vegetarijanac.

Naravno, tu su i mnoge specifičnosti samih platformi - čemu developer ima pristup, što se može izvesti, a što ne može; kao i neke arhitekturne stvari, s obzirom da se platforma dosta oslanja na oblak.


Što je najveći izazov pri razvoju aplikacije?

Za mobilne platforme - performanse. Nitko ne voli sporu aplikaciju, a mobiteli, koliko god bili puni procesorskih jezgri i memorije, nisu punokrvna računala ili poslužitelji i svaki će loš komad arhitekture ili kôda biti penaliziran.

Po tome se odmah vidi razlika između iskusnih i neiskusnih mobilnih developera. Kod mobitela je, puno više nego na drugim razvijateljskim područjima, važno kako je nešto napravljeno, a ne samo da radi. Web je, recimo, puno tolerantniji po tom pitanju.

Naravno, svaka aplikacija ima svojih vlastitih izazova, ovisno o mogućnostima koje treba imati. Tako je kod Bugove aplikacije najizazovniji bio rad s PDF-ovima i kompleksna kombinacija pretplata i kupovina unutar aplikacije.