Architecture Decision Record

Active theme: Light

← Mifano ya rekodi za maamuzi

Rekodi ya Uamuzi wa Usanifu: Lugha ya programu Go

Kichwa: Kupitisha Lugha ya Programu Go

Hali: Imekubaliwa

Muktadha

Shirika letu limekuwa likitumia hasa lugha ya programu Java kujenga programu za wavuti. Hata hivyo, tumekuwa tukipata changamoto kadhaa kutokana na urefu wa msimbo wa Java na utata wa baadhi ya mifumo. Pia, timu yetu imeonyesha nia ya kuchunguza lugha za kisasa za programu kwa uundaji wenye ufanisi na uimara zaidi. Baada ya kufanya utafiti, tumebaini Go kama suluhisho linalowezekana kwa matatizo tunayokabiliana nayo na Java.

Uamuzi

Tutapitisha lugha ya programu Go kujenga programu za wavuti kuanzia sasa.

Sababu

  1. Urahisi na usomekaji: Go inajulikana kwa urahisi wake na sintaksia fupi. Hii inafanya iwe rahisi kusoma na kuandika msimbo, ikipunguza utata wa mchakato wetu wa uundaji.

  2. Utendaji wa juu na uwezo wa kupanuka: Go hukusanywa kuwa msimbo wa mashine unaoendeshwa moja kwa moja kwenye seva. Hii husababisha muda wa utekelezaji wa haraka na utendaji bora ikilinganishwa na lugha zinazotafsiriwa kama Java. Zaidi ya hayo, modeli ya uendeshaji sambamba ya Go hushughulikia maombi mengi kwa wakati mmoja, na kuifanya iweze kupanuka sana.

  3. Usaidizi imara wa jamii: Go ina jamii hai ya waundaji ambao wamechangia ukuaji wake kwa miaka. Hii inamaanisha kuna rasilimali, maktaba, na mifumo mingi ya kutusaidia kuanza na kujenga programu imara.

  4. Unyumbufu: Go inaweza kutumika kwa uundaji wa sehemu ya mbele na ya nyuma. Hii inamaanisha tunaweza kutumia faida zake katika maeneo yote mawili kwa miradi yetu ya uundaji.

Athari

  1. Mafunzo: Waundaji wetu watahitaji kupitia mafunzo ili kujifunza lugha ya programu Go na tofauti zake ndogo.

  2. Uzoefu: Tunaweza kukabiliana na changamoto kadhaa tunapohama kutoka Java kwenda Go. Inaweza kuchukua muda kwa waundaji wetu kuwa mahiri na lugha mpya.

  3. Zana: Tutahitaji kupitisha zana na mifumo mipya mahsusi kwa Go. Hata hivyo, tunaweza kutumia miundombinu iliyopo tuliyo nayo kupunguza athari ya mabadiliko haya.

  4. Kufungwa kwa muuzaji: Go ni lugha ya programu ya chanzo huria, na hatutafungwa kwa muuzaji au mtoa huduma yeyote.

Hitimisho

Kupitishwa kwa lugha ya programu Go kutatusaidia kuboresha mchakato wetu wa uundaji na kujenga programu imara. Tutahitaji kuwekeza rasilimali katika mafunzo na zana kuunga mkono mpito huu, lakini tunaamini kwamba manufaa ya uamuzi huu yanazidi gharama.

Credit: this page is generated by ChatGPT, then edited for clarity and format.