Architecture Decision Record

Active theme: Light

← Päätöstietueiden esimerkkejä

Arkkitehtuuripäätöstietue: Go-ohjelmointikieli

Otsikko: Go-ohjelmointikielen käyttöönotto

Tila: Hyväksytty

Konteksti

Organisaatiomme on käyttänyt pääasiassa Java-ohjelmointikieltä verkkosovellusten rakentamiseen. Olemme kuitenkin kohdanneet joitakin haasteita Javan sanallisuuden ja joidenkin kehysten monimutkaisuuden vuoksi. Lisäksi tiimimme on osoittanut kiinnostusta tutustua nykyaikaisiin ohjelmointikieliin tehokkaampaa ja vankempaa kehitystä varten. Tutkimuksen jälkeen olemme tunnistaneet Gon mahdolliseksi ratkaisuksi Javan kanssa kohtaamiimme ongelmiin.

Päätös

Otamme Go-ohjelmointikielen käyttöön verkkosovellusten rakentamiseen jatkossa.

Perustelut

  1. Yksinkertaisuus ja luettavuus: Go tunnetaan yksinkertaisuudestaan ja ytimekkäästä syntaksistaan. Tämä tekee koodin lukemisesta ja kirjoittamisesta helppoa ja vähentää kehitysprosessimme monimutkaisuutta.

  2. Korkea suorituskyky ja skaalautuvuus: Go käännetään konekoodiksi, joka ajetaan natiivisti palvelimella. Tämä johtaa nopeampiin suoritusaikoihin ja parempaan suorituskykyyn verrattuna tulkittuihin kieliin kuten Java. Lisäksi Gon rinnakkaisuusmalli käsittelee useita pyyntöjä samanaikaisesti, mikä tekee siitä erittäin skaalautuvan.

  3. Vahva yhteisön tuki: Gosta on elinvoimainen kehittäjäyhteisö, joka on vuosien varrella osallistunut sen kasvuun. Tämä tarkoittaa, että resursseja, kirjastoja ja kehyksiä on runsaasti auttamaan meitä pääsemään alkuun ja rakentamaan vankkoja sovelluksia.

  4. Joustavuus: Gota voidaan käyttää sekä käyttöliittymä- että taustajärjestelmäkehitykseen. Tämä tarkoittaa, että voimme hyödyntää sen etuja molemmilla alueilla kehitysprojekteissamme.

Seuraukset

  1. Koulutus: Kehittäjiemme on käytävä koulutus oppiakseen Go-ohjelmointikielen ja sen vivahteet.

  2. Kokemus: Voimme kohdata joitakin haasteita siirtyessämme Javasta Gohon. Voi kestää jonkin aikaa, ennen kuin kehittäjämme hallitsevat uuden kielen.

  3. Työkalut: Meidän on otettava käyttöön uusia Go-kohtaisia työkaluja ja kehyksiä. Voimme kuitenkin hyödyntää olemassa olevaa infrastruktuuriamme muutoksen vaikutuksen minimoimiseksi.

  4. Toimittajasidonnaisuus: Go on avoimen lähdekoodin ohjelmointikieli, emmekä ole sidottuja mihinkään toimittajaan tai palveluntarjoajaan.

Johtopäätös

Go-ohjelmointikielen käyttöönotto auttaa meitä parantamaan kehitysprosessiamme ja rakentamaan vankkoja sovelluksia. Meidän on investoitava resursseja koulutukseen ja työkaluihin tämän siirtymän tukemiseksi, mutta uskomme tämän päätöksen hyötyjen olevan kustannuksia suuremmat.

Kunnianosoitus: tämän sivun on luonut ChatGPT, minkä jälkeen sitä on muokattu selkeyden ja muodon vuoksi.