Architecture Decision Record

Active theme: Light

← Príklady záznamov rozhodnutí

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

  1. 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.

  2. 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ý.

  3. 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.

  4. 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

  1. Školenie: Naši vývojári sa budú musieť zúčastniť školenia, aby sa naučili programovací jazyk Go a jeho nuansy.

  2. 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.

  3. 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.

  4. 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.

Zdroj: túto stránku vygeneroval ChatGPT a potom bola upravená kvôli prehľadnosti a formátu.