Pogled u budućnost programiranja
Nismo vidoviti, ali da probamo. Preda nama je svet koji napreduje iz sata u sat, svet IT tehnologija je najbrže doživeo procvat od svih do sad nama poznatih.
Sve više kompanija u svetu koristi takozvane progresivne veb aplikacije (eng. Progressive Web Apps, PWA), i to sa veoma pozitivnim rezultatima. Za razliku od mobilnih aplikacija, progresivne veb aplikacije kreirane su kao veb stranice, ali sa ciljem da izgledaju kao aplikacija i da odlično funkcionišu i na mobilnim uređajima. Brzina i neometan rad i u oflajn režimu jedne su od najvećih prednosti ovih aplikacija.
S obzirom na to da cena izrade mobilne aplikacije može da bude i nekoliko puta veća od izrade vebsajta, pristupačnost je jedna od ključnih stavki koja ide u prilog progresivnih veb aplikacija u odnosu na mobilne aplikacije. Sa druge strane, PWA su kreirane tako da u sebi sadrže i neke od glavnih karakteristika mobilnih aplikacija, što samo dodaje upotrebnu vrednost za korisnike.
Dve najznačajnije komponente progresivnih veb aplikacija jesu takozvani manifest aplikacije (eng. app manifest) i radna stanica (eng. service worker). Manifest je zapravo fajl koji definiše pokretanje aplikacije, njen rad u internet pretraživačima, kao i samostalno funkcionisanje i sve u vezi sa tim, dok je radna stanica kodirana u programskom jeziku JavaScript i funkcioniše kao proksi server otvoren za dalje programiranje i odgovoran za povezivanje i odgovor aplikacije na zahteve koje dobije na internetu. Stanica je kodirana tako da čuva keš memoriju, uključujući sve HTTPS podatke, što joj omogućava da procesuira odgovor aplikacije i bez dodatnog koda namenjenog za to.
Kada govorimo o programiranju veb aplikacija, programski jezik JavaScript nesumnjivo je jedan od najviše korišćenih jezika za tu svrhu. Primetno je i da taj jezik sve više učvršćuje takvu svoju poziciju, a u tome mu umnogome pomažu i nedavno predstavljene nove verzije tehnologije Angular – Angular 2 i Angular 4 – koje funkcionišu kao programski okviri jezika JavaScript.
Ono što je nekada bio AngularJS, sada je Angular 2, koji je kao takav predstavljen javnosti 2016. godine. U odnosu na svog prethodnika, Angular 2 poseduje unapređenu modularnost, širi opseg merenja u arhitekturi same aplikacije, kao i unapređen način funkcionisanja međusobne zavisnosti među komponentama ovog programskog okvira.
Navikli smo već da nam obaveštenja u vidu zvučnih ili vizuelnih notifikacija redovno stižu na mobilni telefon i obaveštavaju nas o svemu što se dešava u aplikacijama koje koristimo. Takozvana iskačuća obaveštenja (eng. push notification) slična su tome, ali programirana su za rad na veb stranicama. Nihov cilj je da korisnik uvek bude u toku sa svime što se dešava i svim novina akoje se unose na sjat, a neretko se koriste i u marketinške svrhe.
Glavna prednost iskačućih obaveštenja jeste lako i brzo angažovanje korisnika, i to bez potrebe za ulaganjem velikih sredstava. U brojnim slučajevima, ovakva obaveštenja jeftinija su od izrade mobilnih aplikacija, a po mnogim parametrima efikasnija su od imejl marketinga, SMS kampanja ili ažuriranja profila na društvenim mrežama.
Slično kao kod statičkih sajtova, jednostavnost i funkcionalnost ističu se kao glavne karakteristike vebsajtova koji postaju sve popularniji, a sastoje se samo od jedne veb stranice (eng. single-page website). Brojni su primeri takvih sajtova na internetu, a kao najtraženiji ističu se takozvani portfolio sajtovi, kao i vebsajtovi koje čini samo jedna veb stranica i kao takvi služe za predstavljanje poslovanja jedne kompanije na internetu. Tako jednostavno dizajnirane, poslovanje firme predstavljaju na veoma pregledan način. Ovakvi vebsajtovi su namenski kreirani uprošćeno, kako ne bi opterećivali korisnike viškom informacija.
Jedno je sigurno, danas se sve toliko brzo odvija, da prilikom pisanja koda, programeri najčešće i ne stignu da razmišljaju o tome da li će njihov dizajn funkcionisati i za pet godina, jer važno je da besprekorno radi u datom trenutku. Ako tome dodamo činjenicu da korisnici interneta postaju sve zahtevniji, jasno je da je pred veb dizajnerima i programerima težak zadatak – njihove kreacije treba da budu funkcionalne, korisne i spremne za rad u veoma kratkom roku. I pored toga, naravno, treba da budu brze i efikasne.
Na sreću, brojni alati, jezici, aplikacije, programi i programski okviri u kojima programeri rade razvijaju se istom tom brzinom.
Kao ključni pojmovi, kada je reč o trendovima u programiranju koji će biti aktuelni u 2018. godini, a svakako i u narednim godinama, izdvajaju se jednostavnost, brzina i efikasnost u upotrebi programskih jezika, kao i u korisničkom interfejsu, a posebno se vodi računa i o što kvalitetnijem korisničkom iskustvu. U svemu tome, kako zaključujemo, prednjače progresivne veb aplikacije koje će definitivno obeležiti budućnost programiranja.