Záznam architektonického rozhodnutia: programovací jazyk Go
Názov: Prijatie programovacieho jazyka Go
Stav: Prijaté
Kontext
Naša organizácia doteraz primárne používala programovací jazyk Java na budovanie webových aplikácií. Stretávame sa však s určitými problémami kvôli rozvláčnosti Javy a zložitosti niektorých frameworkov. Náš tím tiež prejavil záujem o skúmanie moderných programovacích jazykov pre efektívnejší a robustnejší vývoj. Po výskume sme identifikovali Go ako potenciálne riešenie problémov, s ktorými sa pri Jave stretávame.
Rozhodnutie
Programovací jazyk Go budeme odteraz prijímať na budovanie webových aplikácií.
Zdôvodnenie
Jednoduchosť a čitateľnosť: Go je známe svojou jednoduchosťou a stručnou syntaxou. Vďaka tomu sa kód ľahko číta a píše, čo znižuje zložitosť nášho vývojového procesu.
Vysoký výkon a škálovateľnosť: Go sa kompiluje do strojového kódu, ktorý beží natívne na serveri. To vedie k rýchlejšiemu vykonávaniu a lepšiemu výkonu v porovnaní s interpretovanými jazykmi ako Java. Model súbežnosti Go navyše spracúva viacero požiadaviek súčasne, vďaka čomu je vysoko škálovateľný.
Silná podpora komunity: Go má živú komunitu vývojárov, ktorí v priebehu rokov prispeli k jeho rastu. To znamená, že existuje množstvo zdrojov, knižníc a frameworkov, ktoré nám pomôžu začať a budovať robustné aplikácie.
Flexibilita: Go sa dá použiť na vývoj front-endu aj back-endu. To znamená, že môžeme jeho výhody využiť v oboch oblastiach pre naše vývojové projekty.
Dôsledky
Školenie: Naši vývojári sa budú musieť zúčastniť školenia, aby sa naučili programovací jazyk Go a jeho nuansy.
Skúsenosti: Pri prechode z Javy na Go môžeme čeliť určitým problémom. Môže chvíľu trvať, kým sa naši vývojári v novom jazyku zdokonalia.
Nástroje: Budeme musieť prijať nové nástroje a frameworky špecifické pre Go. Môžeme však využiť existujúcu infraštruktúru, ktorú máme, aby sme minimalizovali dopad tejto zmeny.
Viazanosť na dodávateľa: Go je open source programovací jazyk a nebudeme viazaní na žiadneho dodávateľa ani poskytovateľa služieb.
Záver
Prijatie programovacieho jazyka Go nám pomôže zlepšiť náš vývojový proces a budovať robustné aplikácie. Budeme musieť investovať zdroje do školení a nástrojov na podporu tohto prechodu, ale veríme, že prínosy tohto rozhodnutia prevažujú nad nákladmi.