Zapis arhitekturne odločitve: programski jezik Go
Naslov: Uvedba programskega jezika Go
Stanje: Sprejeto
Kontekst
Naša organizacija je za gradnjo spletnih aplikacij doslej večinoma uporabljala programski jezik Java. Vendar se soočamo z nekaterimi izzivi zaradi besednosti jezika Java in kompleksnosti nekaterih ogrodij. Naša ekipa je tudi pokazala zanimanje za raziskovanje sodobnih programskih jezikov za učinkovitejši in robustnejši razvoj. Po opravljeni raziskavi smo kot možno rešitev težav, s katerimi se soočamo pri Javi, prepoznali Go.
Odločitev
Za gradnjo spletnih aplikacij bomo odslej uvedli programski jezik Go.
Utemeljitev
Preprostost in berljivost: Go je znan po svoji preprostosti in jedrnati sintaksi. To olajša branje in pisanje kode ter zmanjša kompleksnost našega razvojnega procesa.
Visoka zmogljivost in razširljivost: Go se prevede v strojno kodo, ki se izvaja izvorno na strežniku. To pomeni hitrejši čas izvajanja in boljšo zmogljivost v primerjavi z interpretiranimi jeziki, kot je Java. Poleg tega model sočasnosti v jeziku Go hkrati obravnava več zahtev, zaradi česar je zelo razširljiv.
Močna podpora skupnosti: Go ima živahno skupnost razvijalcev, ki so v preteklih letih prispevali k njegovi rasti. To pomeni, da je na voljo veliko virov, knjižnic in ogrodij, ki nam pomagajo začeti in graditi robustne aplikacije.
Prilagodljivost: Go je mogoče uporabljati tako za razvoj uporabniškega dela kot zaledja. To pomeni, da lahko njegove prednosti izkoristimo na obeh področjih svojih razvojnih projektov.
Posledice
Usposabljanje: Naši razvijalci se bodo morali usposobiti za učenje programskega jezika Go in njegovih posebnosti.
Izkušnje: Pri prehodu z Jave na Go se lahko soočimo z nekaterimi izzivi. Naši razvijalci bodo morda potrebovali nekaj časa, da bodo obvladali novi jezik.
Orodja: Uvesti bomo morali nova orodja in ogrodja, specifična za Go. Vendar lahko izkoristimo obstoječo infrastrukturo, ki jo že imamo, da zmanjšamo vpliv te spremembe.
Zaklenitev pri dobavitelju: Go je odprtokodni programski jezik in ne bomo vezani na nobenega dobavitelja ali ponudnika storitev.
Sklep
Uvedba programskega jezika Go nam bo pomagala izboljšati razvojni proces in graditi robustne aplikacije. Za podporo tega prehoda bomo morali vložiti vire v usposabljanje in orodja, vendar verjamemo, da koristi te odločitve odtehtajo stroške.