Architecture Decision Record

Active theme: Light

← Primjeri zapisa odluka

Zapis arhitekturne odluke: programski jezik Go

Naslov: Usvajanje programskog jezika Go

Status: Prihvaćeno

Kontekst

Naša organizacija dosad je primarno koristila programski jezik Java za izradu web aplikacija. Međutim, susrećemo se s određenim izazovima zbog opširnosti Jave i složenosti nekih okvira. Također, naš je tim pokazao interes za istraživanje modernih programskih jezika za učinkovitiji i robusniji razvoj. Nakon istraživanja identificirali smo Go kao potencijalno rješenje problema s kojima se suočavamo s Javom.

Odluka

Ubuduće ćemo usvojiti programski jezik Go za izradu web aplikacija.

Obrazloženje

  1. Jednostavnost i čitljivost: Go je poznat po jednostavnosti i sažetoj sintaksi. To olakšava čitanje i pisanje koda, smanjujući složenost našeg razvojnog procesa.

  2. Visoke performanse i skalabilnost: Go se kompajlira u strojni kod koji se izvorno izvodi na poslužitelju. To rezultira bržim vremenima izvršavanja i boljim performansama u usporedbi s interpretiranim jezicima poput Jave. Osim toga, Goov model istodobnosti istodobno obrađuje više zahtjeva, što ga čini vrlo skalabilnim.

  3. Snažna podrška zajednice: Go ima živu zajednicu programera koji su tijekom godina doprinijeli njegovu rastu. To znači da postoji mnogo resursa, biblioteka i okvira koji nam pomažu započeti i graditi robusne aplikacije.

  4. Fleksibilnost: Go se može koristiti i za front-end i za back-end razvoj. To znači da možemo iskoristiti njegove prednosti u oba područja za naše razvojne projekte.

Implikacije

  1. Obuka: Naši programeri morat će proći obuku kako bi naučili programski jezik Go i njegove nijanse.

  2. Iskustvo: Možemo se suočiti s određenim izazovima pri prelasku s Jave na Go. Našim programerima može trebati neko vrijeme da ovladaju novim jezikom.

  3. Alati: Morat ćemo usvojiti nove alate i okvire specifične za Go. Međutim, možemo iskoristiti postojeću infrastrukturu koju imamo kako bismo smanjili utjecaj ove promjene.

  4. Zaključavanje kod dobavljača: Go je programski jezik otvorenog koda i nećemo biti vezani ni za jednog dobavljača ili pružatelja usluga.

Zaključak

Usvajanje programskog jezika Go pomoći će nam poboljšati razvojni proces i graditi robusne aplikacije. Morat ćemo uložiti resurse u obuku i alate kako bismo podržali ovaj prijelaz, ali vjerujemo da koristi ove odluke nadmašuju troškove.

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