How it’s made! Cum transformi ideea ta, într-o aplicație de succes

Ai o idee și vrei să o transformi într-o aplicație? Ce faci, de unde începi, care sunt pașii de urmat și la ce trebuie să fii atent? Ah, și era să omitem, de unde știi că ai nevoie de o aplicație? Să le luăm pe rând, pas cu pas, și să vedem tot parcursul împreună.

De unde știi că ai nevoie de o aplicație?

Păi în primul rând trebuie să știi că site-ul e site, iar aplicația mobilă e total altceva. O altă piață, cu alte reguli, alți useri, alte modele de comportament și deci alte modele de business. Câteva diferențe am încercat să le clarificăm într-un articol precedent – Site-uri web responsive vs. aplicații mobile, când și la ce le folosim pe fiecare?

Totuși, trebuie spus că sunt câteva argumente foarte clare în favoarea dezvoltării aplicațiilor web. Uite câteva dintre ele:

  • Ai un look&feel nativ pentru mediul mobile, pe care nici un site web nu-l poate egala
  • Poți folosi mult mai bine resursele hardware ale smartphone-ului – cameră, GPS, telefon etc.
  • Funcționalități mai simple și mai rapide
  • Ai un canal mai prietenos spre un alt public, cu alt comportament
  • Condițiile de securitate sunt la un nivel superior

De unde începi dezvoltarea conceptului?

În teorie e relativ simplu. Dar, desigur, în practică trebuie să investești timp, atenție și research pentru a porni cu o bază solidă. În primul rând trebuie să privești aplicația ca pe un business, așa că trebui să-ți dai seama de la început ce aduce nou aplicația pe care vrei s-o dezvolți, ce-o diferențiază față de web și cum poți tu să folosești platforma mobilă ca să îți atragi userii într-un număr cât mai mare. Trebuie să ai în vedere că acum mai toată lumea are un smartphone, pe care este mult mai ușor să folosești o aplicație decât să intri pe un website. Cu aceste idei avute în vedere, trebuie să te gândești cum ar trebui să fie structurată aplicația ta astfel încât să fie ușor pentru user să acceseze serviciile tale sau să facă ceea ce-și dorește, folosind aplicația pe care tu i-o pui la dispoziție gratuit sau contra-cost.

Primul pas în procesul de dezvoltare

Ok, să zicem că ai ajuns la concluzia că ai nevoie de o aplicație, că știi cam ce ai vrea ea să facă, știi și cum se diferențiază și de ce merită să investești în dezvoltarea ei. Hai s-o dezvoltăm!

În primul rând trebuie să știi că lumea aplicațiilor e împărțită cam în 2 tabere să zicem relativ egale ca putere de influență –iOS și Android, sau Apple și Google. Așadar, dacă vrei să faci o aplicație chiar pentru toată lumea, de fapt trebuie să faci măcar 2, câte una pentru fiecare platformă. Și ai două scenarii mari pe care poți merge: fie le dezvolți nativ – adică în mediile de lucru agreate de fiecare producător în parte, fie le dezvolți cross platform, într-un mediu care ți le dezvoltă împreună, însă la final ai ca output câte o aplicație pentru fiecare din cele două mari platforme. Și aici sunt mai multe variante. E varianta în care o dezvolți în React Native – ai același cod sursă, iar la un moment dat se separă lucrurile pentru Android și iOS, pentru că fiecare are particularități, fie în Flutter, un mediu mai nou dezvoltat de Google. Diferența e că în React Native dacă pui să zicem un buton, React Native va chema din spate un buton presetat pentru iOS sau Android, depinde de platformă. Spre deosebire, în Flutter, acel buton este efectiv rescris de la zero atât pentru iOS, cât și pentru Android. Fiind un mediu mai nou, are și dezavantajele unor mici clinciuri ce pot să apară, dar are un look&feel superior.

Cum alegem?

Trăgând linie la final, discuția despre nativ vs. cross platform de cele mai multe ori se reduce la bani și timp. Ca să faci nativ ai nevoie de mai mult timp, de două echipe care să lucreze sincronizat și, evident, de buget mai mare. Pe de altă parte rezultatul este unul net superior din punct de vedere al adaptării aplicației perfect la specificul celor două platforme.

Dacă ai un buget mai mic, e mai ok să alegi varianta cross platform, mai ales dacă ai de-a face cu o aplicație de la care nu ai așteptări foarte mari în materie de design și de funcționare. Pe de altă parte, dacă ai un start-up de exemplu, care vrei să impresioneze de la început, pentru ca el să crească rapid, foarte mult, atunci trebuie să impresionezi prin funcționalitate, design și simplitate. Iar ca să faci ceva să fie foarte simplu, nu e deloc ușor. Și atunci, de multe ori faci ce fac foarte multe startup-uri – dezvolți nativ în prima fază o variantă iOS, iar dacă prinde la public și găsești investitorii, atunci găsești și bugetul pentru dezvoltarea variantei Android.

Workflow – care sunt pașii?

Ai ales și calea pe care o vei urma? Atunci trebuie să știi că și modelul dezvoltării diferă ca parcurs. Dacă se merge pe varianta cross platform, atunci se creează o echipă mixtă, iOS și Android și, de regulă vor fi 1-2 programatori care vor lucra la aplicație. Dacă se merge pe varianta nativă, atunci efectiv se separă tot development-ul și se fac ședințe periodice de aliniere. Aceste ședințe se vor face destul de des, de regulă după finalizarea fiecărei componente, pentru ca proiectul să meargă sincronizat spre release. Trebuie să știi însă că oricum vor fi particularități și că este normal ca ele să existe. Asta pentru că fiecare utilizator este obișnuit să vadă o aplicație scrisă pe design pattern-ul device-ului pe care-l folosește. Așadar, nu poți să oferi o aplicație scrisă în stilul iOS unui utilizator de Android, pentru că nu va fi obișnuit cu ea și i se va părea că lucrurile nu sunt la locul lor. La fel și invers. De regulă, ele vor fi identice în proporție de 90-95%.

Release-uri și publicarea în store-uri

Cât durează dezvoltarea și când e gata o aplicație? Răspunsul poate fi foarte nuanțat. Dezvoltarea poate dura de la o lună, la cele mai simple, la 4-5 ani sau chiar mai mult. Iar construcția, rafinarea și adăugarea de funcționalități poate fi perpetuă.

După ce toată dezvoltarea variantei beta, să zicem că s-a încheiat conform planificării, se face o testare finală, iar aplicația este pregătită de lansare sau, în argoul din domeniu, de release. Trebuie să știi că ambele platforme, atât iOS, cât și Android au impus un review înainte de publicarea pe store – App Store, respectiv Google Play. La acest pas, sarcina e tot a developerilor. Cu alte cuvinte, noi ne ocupăm de tot și, chiar dacă publicarea este respinsă o dată sau de chiar de două ori, nu e nimic tragic. Asta se poate întâmpla fie din cauza unor probleme pe care nimeni nu le-a prevăzut, fie din cauza guideline-urile care se schimbă destul de des sau a sistemelor de operare care anual trec prin update-uri majore.

Viața după publicare

Am ajuns în punctul în care aplicația merge, e perfect funcțională, disponibilă în cele două store-uri și proiectul s-a finalizat. Trebuie să știi că aplicația este de fapt un frontend și, ca orice frontend, are nevoie de o legătură cu o bază de date. Legătură ce se face printr-un API. De fiecare dată când aduci modificări la API (de pildă când adaugi o funcționalitate nouă) sau la bazele de date cu care lucrezi, pot să apară bug-uri, iar atunci trebuie să faci update la aplicație. Pe de altă parte, conflicte pot să apară și din cauza update-urilor la sistemele de operare – Android sau iOS. Concluzia este că o aplicație are tot timpul nevoie de mentenanță, ca să ea să fie menținută „la zi”.

Cât costă?

Nici aici nu există un răspuns simplu. Totuși, îți putem da câteva informații ca măcar să-ți faci o imagine despre cum se ajunge la un buget. O aplicație simplă care expune niște servicii simple – de pildă un calculator de taxe, poate să fie dezvoltată cu 1-2.000 de euro. Pe de altă parte, o aplicație mobilă de tip shop, poate ajunge la bugete de dezvoltare de mii bune de euro. Costul unei aplicații este dat de regulă de numărul de ecrane. Dacă va avea 5-6 ecrane, atunci probabil va avea un cost redus. Desigur, depinde și ce e pe acele ecrane, pentru că dacă în ele e nevoie VR, inteligență artificială sau alte funcționalități complexe, atunci costurile cresc.

Cu aceste informații, sper că v-am oferind un insight valoros, care să vă ajute în cântărirea opțiunilor pe care le aveți pentru a dezvolta viitorul Tik Tok, Clubhouse sau altă aplicație care ignoră aproape 100% componenta web și construiește un business de succes pe o aplicație.

Write a Reply or Comment

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

my

*


Vă rugăm nu treceți date personale în secțiunea de comentarii.