Framework – koji bi trebalo da izaberete?

Share

JavaScript frameworks su veoma popularni među developerima, posebno zbog svojih pogodnosti kao što su efikasnost, bezbednost i utrošak. Raznolikost frameworka za svaku razvojnu platformu je ogromna. Nemoguće je opisati svaki od njih, a za to i nema potrebe. Hajde da suzimo naš izbor. Skoro svaka kompanija želi da ima svoj websajt ili landing stranicu, i u tu svrhu bi bilo dobro osvrnuti se na prednosti i mane najpopularnijih JavaScript frameworka.

Front-end developerima je izazovno da se odluče koji će JavaScript framework odabrati, posebno kada je potrebno napraviti „single-page“ aplikaciju.

Da bi se olakšao ovaj izbor za razvoj Front-end aplikacija , trebalo bi da suzimo izbor na najpopularnije solucije. Za razvoj aplikacija na klijentskoj strani, naša lista JavaScript frameworka se svodi na React, Angular ( Angular 2 ili novije verzije) i VueJS.

Od gore spomenutih, ne predstavljaju svi potpuni framework, ali možemo da dodamo nekoliko biblioteka i paketa i učinimo ih potpunim. Ovde govorimo posebno o React-u i VueJS-u, koji predstavljaju biblioteke i „view“ sloj jedne MVC arhitekture. Međutim, u svrhu ovog teksta, koristićemo termin „framework“ za ove solucije gore navedene.

Savremeni JavaScript framework mora biti u skladu sa nekoliko zahteva.

Prvenstveno, moderni front-end framework mora poštovati specifikaciju VEB komponenti. U modernom razvoju aplikacija na klijentskoj strani, treba praviti sopstvene HTML elemente, i veoma je dobro da svaki framework koga uzimamo u obzir podržava VEB Komponente.

Sa druge strane, dobar JavaScript framework bi trebalo da ima sopstveni ekosistem. Svi oni predstavljaju gotova rešenja koja olakšavaju razne probleme kod razvoja aplikacija na klijentskoj strani, a neka od rešenja su rutiranje, održavanje stanja aplikacije i komuniciranje sa serverom.

Angular, React i VueJS se pridržavaju najnovijih JavaScript standarda (ES6+), a takođe svaki od njih poseduje svoj ekosistem. Sada možemo napraviti i pregled najpopularnijih frameworka.

Angular2+

Prednosti

Najveća vrlina Angulara je njegova popularnost. Kod organizacija koje razmatraju da li da ga izaberu, njegova povezanost sa Google-om ima jak uticaj u njegovom odabiru. Ima jako tržište za developere. Takođe je jedan od frameworka koji, u poređenju sa drugim koje ovde pominjemo, ima veoma bogat izbor komponenti za kreiranje korisničkog interfejsa.

Mane

Imamo osećaj da se Angular previše usredsređuje na kreiranje korisničkih interfejsa u ‘single-page’ aplikacijama i ne sagledava rešavanje većih problema u kreiranju VEB aplikacija. Ovo može da dovede do poteškoća pri održavanju projekta ukoliko se ne isplaniraju standardi od samog početka. Na praktičnijem nivou, dešava se dosta magije koja omogućava ponašanje koje nije deo samog frameworka pri ‘run-time’-u. Ovo potiskuje vrednost TypeScript-a krajnjem korisniku.

Zašto izabrati?

Ukoliko vam je potrebno skaliranje frameworka ili je potrebno da usaglasite tim po nivou produktivnosti u kratkom periodu, možda bi trebalo da uzmete u obzir Angular. Ako se aplikacije lepo preslikavaju u MVC patern, takođe možete uzeti Angular u obzir. Ako ste zadovoljni sa Google-ovim Material UX paternom, onda je ovo pravo rešenje za vas.

React + Redux

Prednosti

Najveće prednosti React-a i Redux-a su njihova jednostavnost i usredsređenost. Prateći princip je da se radi jedna stvar i to dobro, teško je naći grešku kada pogledamo da obe biblioteke to postižu veoma efikasno.

Mane

Najveća mana obe biblioteke nije to što rade, već ono što ne rade. Da biste napravili bogatu VEB aplikaciju, potrebni su vam mnogi drugi paketi i jednom kada se odvojite od samih biblioteka videćete da je to duboko razdvojena zajednica koja poseduje bezbroj rešenja koje nije lako integrisati.

Zašto izabrati

Ako ste pouzdani u svoje mogućnosti i tražite neku bolju biblioteku umesto temeljnog frameworka, možda su React i Redux pravo rešenje za vas. Morate da iskreno ocenite mogućnosti vašeg tima i organizacije, ne samo na početku projekta već i pri dužem održavanju same aplikacije.

VueJS

Prednosti

Mogućnost da usvojimo Vue deo po deo je možda njegova najveća vrlina. Vue ima sažetu i razumnu arhitekturu sa kojom je lako razumeti i pisati kod.

Mane

Želja da se nagne ka „view-model“ aplikaciji i aplikaciji sa održavanjem stanja, može da dovede do problema. Osećaj dok koristite ovaj framework je kao da želite da kod bude bitan u odnosu na ostatak aplikacije bez preciznog odlučivanja za neki patern.

Zašto izabrati

Ako imate slabo podržanu aplikaciju koja ima potrebu za jakom funkcionalnošću, onda bi Vue mogao da bude dobro rešenje za vas. Ima čiste paterne čak i za neiskusne timove. Iako nema toliko razvijenu zajednicu kao drugi UX frameworks, Vue nudi veoma korisne pakete koje možete ubaciti u svoj projekat.

Framework nije ništa drugo nego primena nekog paterna, integracije neke tehnologije i izvornog koda koji pomaže našim VEB aplikacijama da se lakše naprave i održavaju. Izazovite sebe ili vaš tim da celokupno sagledaju framework, ali prvenstveno počnite sa listom šta je vama i vašoj organizaciji potrebno.

Iako smo spomenuli samo tri frameworka, JavaScript developeri bi ovo trebalo da prihvate otvoreno jer ne postoji najbolji framework. Postoje mnogobrojni primeri JavaScript frameworka koji su sasvim dovoljni za razvoj aplikacija na klijentskoj strani.

Share

Prijavi se da prvi dobijaš nove blogove i vesti.

Ostavite odgovor

Miloš Aksentijević

Front-end developer @ Quantox technology
mm

Miloš Aksentijević je Front-end programer QuantoxTech-a i radi u niškoj kancelariji gde je na završnoj godini elektronskog fakulteta.

Ljubav ka IT-u se razvila još kada je bio srednjoškolac. Savršeno vlada programskim jezicima JavaScript, HTML, CSS, vueJS i ima tendeciju da u narednom periodu razvije svoju karijeru i postane mevn stack developer a tome nastoji učeći i usavršavajući nodeJS, express, mondgoDB i vueJS.

Svoje slobodno vreme voli da provodi aktivno baveći se sportom.

Prijavi se da prvi dobijaš nove blogove i vesti.

Kategorije