Architecture Decision Record

Active theme: Light

← Primjeri zapisa odluka

Zapis arhitekturne odluke: front-end JavaScript biblioteka React

Kontekst

Moramo odabrati front-end JavaScript biblioteku za našu aplikaciju kako bismo razvili responzivno i interaktivno korisničko sučelje.

Razmatrane opcije

  1. React

  2. Vue

  3. Svelte

Odluka

Koristit ćemo React kao našu front-end JavaScript biblioteku.

Obrazloženje

  1. Komponentna arhitektura: React pruža komponentnu arhitekturu koja nam omogućuje razlaganje UI-ja na male komponente za višekratnu uporabu. To pomaže poboljšati modularnost našeg koda i olakšava održavanje, skaliranje i ažuriranje aplikacije.

  2. Deklarativno programiranje: React koristi deklarativni stil programiranja koji naš kod čini intuitivnijim i lakšim za čitanje. Također pruža virtualni DOM, koji omogućuje da naš kod radi brže i učinkovitije.

  3. Velika zajednica: React ima veliku i aktivnu zajednicu i jedna je od najpopularnijih front-end biblioteka. To znači da postoji mnogo dostupnih resursa, alata i biblioteka koji nam mogu pomoći da brže i učinkovitije razvijemo svoju aplikaciju.

  4. Bolje performanse: React koristi jednosmjerni tok podataka, što pomaže pojednostaviti logiku aplikacije i čini je učinkovitijom. Također pruža renderiranje na strani poslužitelja, što pomaže poboljšati performanse i SEO naše aplikacije.

  5. Fleksibilnost: React se može koristiti s drugim bibliotekama i okvirima, što nam daje slobodu odabira najboljeg tehnološkog stoga koji odgovara zahtjevima našeg projekta.

Posljedice

  1. Krivulja učenja: React ima krivulju učenja i programerima koji su novi u Reactu može trebati neko vrijeme da se uhodaju.

  2. Alati za izgradnju: React zahtijeva dodatne alate za izgradnju poput Babela i Webpacka, što može dodati složenost razvojnom procesu.

  3. Kompatibilnost s preglednicima: React ima probleme s kompatibilnošću sa starijim preglednicima jer koristi značajke ES6 koje starije verzije preglednika ne podržavaju.

  4. Strma krivulja učenja: Programerima koji nisu upoznati s Reactom može trebati vremena da nauče kako ga učinkovito koristiti, što može dovesti do sporijeg razvoja.

Zaključak

Odlučili smo koristiti React kao front-end JavaScript biblioteku naše aplikacije. Iako može imati krivulju učenja, koristi koje React pruža, poput komponentne arhitekture, deklarativnog stila programiranja, boljih performansi, fleksibilnosti i velike zajednice, nadmašuju potencijalne nedostatke.

Izvor: ovu stranicu generirao je ChatGPT, a zatim je uređena radi jasnoće i oblika.