Zapis arhitekturne odločitve: JavaScriptna knjižnica Svelte za uporabniški vmesnik
Stanje: Sprejeto
Kontekst
Razvijamo spletno aplikacijo s sodobnim JavaScriptnim ogrodjem za uporabniški del. Izbrati želimo knjižnico, ki je lahka, hitra in enostavna za uporabo. Ovrednotili smo več knjižnic, vključno z React, Vue in Angular. Slišali smo tudi za Svelte, ki trdi, da je nova vrsta lahkega ogrodja. Svelte moramo ovrednotiti in se odločiti, ali je dobra izbira za našo aplikacijo.
Odločitev
Po preudarku prednosti in slabosti posamezne knjižnice smo se odločili, da kot svojo JavaScriptno knjižnico za uporabniški del uporabimo Svelte, in sicer iz naslednjih razlogov:
Lahka: Svelte je ena najlažjih razpoložljivih knjižnic, kar nam bo pomagalo ohraniti majhno velikost aplikacije in izboljšati čase nalaganja strani.
Hitra: Svelte je znan po hitrem upodabljanju, zaradi česar bo naša aplikacija delovala odzivno in živahno.
Enostavna za uporabo: Sintaksa Svelte je preprosta in lahko razumljiva, kar bo naši ekipi olajšalo uvedbo in pisanje čiste kode.
Optimizirana za upodabljanje UI: Svelte je optimiziran za upodabljanje komponent UI, kar nam bo olajšalo ustvarjanje dinamičnih in ponovno uporabnih elementov UI.
Dobra dokumentacija in podpora skupnosti: Svelte ima rastočo skupnost in dobro dokumentacijo, kar nam bo pomagalo hitro začeti in rešiti vse težave, ki se pojavijo.
Alternative
Preučili smo React, Vue in Angular, vendar smo se proti njim odločili iz naslednjih razlogov:
React: Čeprav ima React veliko bazo uporabnikov ter bogastvo knjižnic in virov, je lahko zapleten in težak za učenje, zlasti za začetnike.
Vue: Vue je lahka knjižnica, ki jo je enostavno naučiti in uporabljati, vendar morda ni tako hitra ali optimizirana kot Svelte.
Angular: Angular je celovito ogrodje, ki ponuja veliko funkcij in orodij, vendar je lahko težko in zapleteno ter lahko zahteva več vzdrževanja kot Svelte.
Posledice
Uporaba Svelte kot naše JavaScriptne knjižnice za uporabniški del bo imela naslednje posledice:
Naša aplikacija bo lahka in hitra, kar bo izboljšalo uporabniško izkušnjo in angažiranost.
Naša ekipa se bo morala naučiti nove knjižnice, vendar je sintaksa Svelte preprosta in lahko razumljiva, zato bi morala biti krivulja učenja obvladljiva.
Svelte je še vedno razmeroma nova knjižnica, zato lahko naletimo na nekatere težave, ki niso dobro dokumentirane ali podprte s strani skupnosti.
Skupnost uporabnikov Svelte raste, zato bomo morda v prihodnosti videli več knjižnic in virov tretjih oseb, ki jih bo mogoče uporabiti kot dopolnilo jedrne knjižnice.
Sklep
Na podlagi naše ocene smo se odločili, da za svojo spletno aplikacijo kot JavaScriptno knjižnico za uporabniški del uporabimo Svelte. Verjamemo, da so lahkotnost in hitrost Svelte, enostavnost uporabe in optimizirano upodabljanje UI zaradi tega najboljša izbira za naše potrebe. Še naprej bomo spremljali razvoj Svelte in njegove skupnosti ter po potrebi spremenili svojo izbiro.