paint-brush
Tsela ya go Kgetha Mokgobo wa Seva Ge Setšweletšwa se Thakgolwaka@gnovikov
109,224 dipuku tša go balwa
109,224 dipuku tša go balwa

Tsela ya go Kgetha Mokgobo wa Seva Ge Setšweletšwa se Thakgolwa

ka Grigorii Novikov9m2024/03/01
Read on Terminal Reader
Read this story w/o Javascript

Nako e telele kudu; Go bala

Lefapheng la tlhabollo ya setšweletšwa, kgetho ya mokgobo wa seva e swere bohlokwa bjo bogolo kudu, e bopa e sego fela go tsenywa tirišong ga mathomo eupša gape le go kgonagala ga nako ye telele le bokgoni bja tirišo ya gago. Grigorii Novikov, Mohlami yo Mogolo wa Backend yo a nago le nako, o tšea go tšwa go lehumo la gagwe la phihlelo go fa ditemogo tše bohlokwa kudu ka tshepedišo ye e raraganego ya go kgetha mokgobo wa seva wo o loketšego.
featured image - Tsela ya go Kgetha Mokgobo wa Seva Ge Setšweletšwa se Thakgolwa
Grigorii Novikov HackerNoon profile picture
0-item


Go kgetha mokgobo wa seva o phethagetšego bakeng sa go thoma setšweletšwa ke phetho yeo e rwalago boima bjo bogolo. Kgetho ye ga e tutuetše feela go tsenywa tirišong ga mathomo eupša go feto-fetoga le maemo ga nako e telele le bokgoni bja tirišo ya gago. Ge e ba o le motšweletši yo mogolo goba o etelela pele sehlopha, o rwala maikarabelo a diphetho tše tša go aga, o sefa ka lewatleng la maleme le ditlhako go hwetša tše di swanetšego ka mo go phethagetšego bakeng sa dinyakwa tša moswananoši tša projeke ya gago. Mošomo wa gago mo ke go dira kgetho ye bohlokwa, yeo e tlago swara godimo ge projeke ya gago e tšwela pele le go katološwa.


Ke nna Grigorii Novikov, Mohlami yo Mogolo wa Backend yo a nago le maitemogelo a mengwaga ya go betla le go phatlalatša ditlhamo tša disoftware. Mošomong wa ka ka moka, ke ile ka lebeletšana le diphetho tše dintši tše bohlokwa mabapi le kgetho ya mokgobo wa seva. Sephetho se sengwe le se sengwe se okeditše dillaga kwešišong ya ka ya kamoo nka logaganyago thekinolotši le dinyakwa tša projeke yeo e golago. Sehlogong se, ke tla abelana le wena tše dingwe tša ditemogo tšeo tšeo di di hweditšego ka thata, ke go thuša go kgetha mokgobo wa seva wo o tlago go swanela dinyakwa tša bjale tša projeke ya gago le go thekga kgolo ya yona ya ka moso. Ke go mema go hlahloba le nna dilo tša ka gare le tša ka ntle tša go tšea diphetho tša theknolotši tšeo di bulago tsela ya katlego, go kgonthiša gore projeke ya gago e eme fase mobung wo o butšwitšego bakeng sa kgolo, go fetofetoga le maemo, le boitlhamelo.


Ge e ba o le motšweletši yo mogolo goba o etelela pele sehlopha, o rwala maikarabelo a diphetho tše tša go aga, o sefa ka lewatleng la maleme le ditlhako go hwetša tše di swanetšego ka mo go phethagetšego bakeng sa dinyakwa tša moswananoši tša projeke ya gago.


1. Go Hlagiša Ditokomane ka Bowena

Le ge e sa amana le khoutu ka boyona, ntlha ye e bohlokwa kudu moo e swanetšego go ahlaahlwa pele. Ditokomane tše di tiilego ke leswika la sekhutlo la tlhabollo ye e šomago gabotse, kudu ge go tliwa go tlhabollo ya lehlakore la bareki le go dira diteko tša tirišo. Didirišwa tša go tšweletša ditokomane ka go itiriša di fetošitše tshepedišo ye, go netefatša gore ditokomane di sepela le diphetogo tša moragorago tša API, di nolofatša ditshepedišo tša mošomo tša tlhabollo, le go fokotša maitapišo a seatla a go boloka ditokomane tša projeke ya gago di le nakong.


Gare ga didirišwa tšeo di lego gona go motšweletši, ke kgothaletša Swagger ka baka la go feto-fetoga ga yona, go amogelwa ka mo go apareditšego le thekgo e matla ya setšhaba. Kgetho e nngwe e tumilego ke Redoc, yeo e fago segokanyimmediamentsi sa sebolokigolo se se kgahlišago, seo se ka fetošwago bakeng sa ditokomane tša API. Bakeng sa diprotšeke tšeo di nyakago go ikgethela mo go nabilego kudu, didirišwa tša go swana le Apiary di fa go fetofetoga le maemo go bapa le bokgoni bja ditokomane, le ge di ka nyaka peakanyo ya mathomo ye ntši.


Go sa šetšwe gore ke sedirišwa sefe seo o se kgethago, maikemišetšo e swanetše go ba go kaonafatša tshepedišo ya ditokomane bakeng sa bokgoni ntle le go dumelela sedirišwa ka bosona go ba go nwelela ga nako mo go bohlokwa. Kgetha tharollo yeo e fokotšago maitapišo a ditokomane tša seatla mola e fana ka go fetofetoga le maemo go tlwaela dinyakwa tša moswananoši tša projeke ya gago.


2. Thekgo ya Tracker ya Diphošo

Go latela diphošo ka bokgoni go bohlokwa kudu bakeng sa go hlokomela bophelo bjo bobotse bja tirišo ya gago. For effective bug tracking integration , Ke sebelisa lisebelisoa tse kang Jira le Bugzilla, bobeli ikgantšha ka sete ya tšobotsi e humilego le go fetofetoga le maemo. Jira, ka mo go kgethegilego, e fana ka bokgoni bjo bo tiilego bja kopanyo le ditikologo tše ntši tša tlhabollo; Bugzilla, ka lehlakoreng le lengwe, e tsebja ka go ba bonolo le go šoma gabotse ga yona, kudukudu diprotšekeng tša mohlodi wo o bulegilego moo go latišiša diphošo ka go otlologa e lego selo sa pele.


Here’s an insight for you: go kopanya di-tracker tša diphošo le baromiwa ba ka pela le ditshepedišo tša taolo ya phetolelo go tla godiša tirišano le bokgoni bja sehlopha sa gago. Ka mohlala, kombo ya Jira + Bitbucket e nolofatša ditshepedišo tša mošomo, e dumelela go latela ditaba tše di se nago mathata ka gare ga tikologo ya taolo ya phetolelo. Kopanyo ye e nolofatša tshepedišo ya tlhabollo ye e lego pepeneneng, ye e nago le mafolofolo, moo diapdeite tša khoutu le diphetho tša ditaba di kgokagantšwego kgauswi, go kgontšha dipoeletšo tša ka pela le boleng bja khoutu bjo bo kaonafetšego.


Kopanyo ye nngwe ye maatla ke Mattermost+Focalboard, yeo e fago sefala sa tirišano ye e feletšego. E kopanya mehola ya kgokagano ya thwii ya Mattermost le bokgoni bja taolo ya projeke le ya mošomo bja Focalboard, e matlafatša dihlopha ka diapdeite tša nako ya nnete ka ga go latela diphošo, gotee le go fetofetoga le maemo go laola mešomo le ditshepedišo tša mošomo ka gare ga segokanyimmediamentsi sa sebolokigolo se se kopanego. Dikopano tše bjalo ga di kaonafatše fela tshepedišo ya tharollo ya diphošo eupša gape di godiša tikologo ya tlhabollo ye e kopanego kudu le ye e nago le mafolofolo, mafelelong di godiša tšweletšo le dipoelo tša protšeke.


3. Go lekanya godimo ga go gola

Ge setšweletšwa sa gago se thoma go swara, o tla lebeletšana le tlhohlo ya go oketša tekanyo . Gomme ga ke bolele feela palo e hlatlogago ya badiriši. Go lekanya go akaretša go tsenya dikarolo tše mpsha, go swara polokelo ya tshedimošo ye e golago, le go boloka maemo a tshepedišo ya motheo wa gago wa khoutu le polokelo ya tshedimošo e le tše di loketšego. Ke mo mohlwaela wo o o kgethilego bakeng sa mokgobo wa gago wa seva o tloga o tsena mošomong.


Ka mohlala, ge o thongwa mošomo wa gago, go ya go moago wa monolithic go ka bonagala e le mokgwa o leka-lekanego. Eupša ge setšweletšwa sa gago se dutše se gola le go fetoga, o tla thoma go bona moo se welago fase. Go fetogela go sebopego sa microservices goba go tliša ditirelo tša leru tše di ka lekanyetšwago go ka go fa taolo ye botse kudu godimo ga dikarolo tše di fapanego tša tirišo ya gago.


Bakeng sa ditharollo tša mokgobo wa seva yeo e ka lekanyetšwago, ke sekamela go theknolotši ya go swana le Kubernetes le Docker. Didirišwa tše di tla go fa go fetofetoga le maemo go oketša ditirelo ka go ikemela, go laola go tsenywa tirišong ka bokgoni, le go netefatša go se fetoge go ralala le ditikologo tša gago. Go feta fao, baabi ba ditirelo tša leru ba go swana le Ditirelo tša Wepesaete tša Amazon, Google Cloud, le Microsoft Azure ba fa ditirelo tše di laolwago tša dinaledi tšeo di ka tlogago di nolofatša leeto la gago la go lekanya.


Go kgetha mohlwaela wo o ka lekanyetšago go ra gore go lekalekanya di-perk tša go lekalekanywa le go raragana ga go laola tshepedišo ye e phatlalatšwago. Mafelelong, maikemišetšo a gago mo ke go kgetha mokgobo wa seva wo o fihlelelago dinyakwa tša gago tša bjale gomme o na le go fetofetoga le maemo go swaragana le kgolo ya ka moso.


4. Go Hwetša Se se Swanelago ka mo go Phethagetšego: Magareng ga Setšhaba le Tšhireletšo

Ga go na tlhaelelo ya maleme a mananeo le ditlhako tše di lego gona, ye nngwe le ye nngwe e na le sete ya yona ya di-perk tša go swana le thekgo ya setšhaba, go hwetšagala ga methopo, gaešita le dikarolo tša tšhireletšo. Go fapafapana mo go dumelela kgetho ye e nabilego ya ditharollo tšeo di sa rarollego fela ditlhohlo tša tlhabollo ya ka pela eupša gape di sepelelana le dinepo tša projeke tša nako ye telele, go akaretšwa tšhireletšo le go katološwa .


Ditheknolotši tšeo di thekgwago ke ditšhaba tše kgolo le methopo ye mentši, go swana le Python le JavaScript – le ditlhako tša tšona ka go latelana ka gare ga maleme a go swana le Django goba React – di fa lehumo la tsebo le mehlala ya khoutu ye e loketšego go šomišwa. Lehumo le le fokotša kudu nako yeo o bego o tla e fetša go rarolla mathata, ge go elwa hloko dikgonagalo tše dinyenyane tša go kopana le taba yeo e sa rarollwago ke motho yo mongwe pele ga gago. Ka lehlakoreng le lengwe, theknolotši ye mpsha goba ya niche e ka tliša di-perk tša moswananoši tafoleng, eupša gantši e tla go tlogela o itokišeletša nako ye thata ge go tliwa tabeng ya go hwetša ditharollo tša ka pela.


Motsotso o mongwe wa bohlokwa ke go leka-lekanya tšhireletšego le go šomišega. Bakeng sa diprotšeke moo tšhireletšo ya khoutu ya mohlodi e lego taba ye kgolo yeo e tshwenyago, nagana ka go šomiša maleme le theknolotši yeo e thekgago go šitiša gabonolo le go phuthela mo go šireletšegilego. Ka mohlala, Java le .NET di hlomile didirišwa le ditshepedišo tša tswalano ya diphedi le tikologo ya tšona bakeng sa go šitiša khoutu. Dithekinolotši tša go dira dikhontheina tša go swana le Docker le tšona di tla go thuša mo. Ka go phuthela tirišo le tikologo ya yona ka gare ga setshelo, o netefatša gore moreki o amogela se sengwe le se sengwe seo se nyakegago go sepetša tirišo ntle le go fihlelela khoutu ya gago ka go lebanya. Mokgwa wo ga o šireletše khoutu fela eupša gape o nolofatša tshepedišo ya go tsenya tirišong.


5. Ditshenyagalelo

Go naganelwa ga ditshenyagalelo go bohlokwa kudu kgethong ya mokgobo wa theknolotši. Ke feela ka ditshenyagalelo tša peakanyo ya mathomo, gape o swanetše go nagana ka nako e telele ka seo se tlago go bitša go hlokomela le go lekanya tshepedišo ya gago .


Dithekinolotši tša mohlodi wo o bulegilego di tla le perk ye bose ya ditefelo tša dilaesense tša lefela pele. Bakeng sa di-startup goba projeke efe goba efe ka tekanyetšo e thata, se e ka ba go goga mo gogolo. Go oketša moo, matamo a magolo a bahlami ba bokgoni a tla go thuša go boloka ditshenyagalelo tša mošomo di laolega kudu.


Ka lehlakoreng le lengwe, theknolotši ye e raraganego kudu le ye e kgethegilego, go swana le blockchain goba diforamo tša ditshekatsheko tša datha tše di tšwetšego pele, di ka nyaka peeletšo ya mathomo ye e phagamego. Le ge ba fana ka di-pros tše bohlokwa go ya ka tshepedišo le tšhireletšo, o swanetše go ela palomoka ya ditshenyagalelo tša beng kgahlanong le mehola yeo e akantšwego.


Go feta fao, ditirelo tša leru, mola di fokotša tlhokego ya mananeokgoparara a mmele, di tla le sete ya tšona ya ditshenyagalelo. AWS, Google Cloud, le Azure tšeo di boletšwego ka mo godimo di nea dika tše di fapa-fapanego tša theko tšeo di ka lekanyago ka tšhomišo ya gago; lega go le bjalo ka ntle le taolo e hlokolosi, ditshenyagalelo tše di ka oketšega ge projeke ya gago e dutše e gola.


6. Thomelo ya khoutu

Go netefatša kabo ya khoutu ye e šomago gabotse go lebeletše kudu tshepedišo ya go tsenya tirišong, kudukudu ka diphaephe tša Kopanyo ye e Tšwelago Pele/Tšhomišo ye e Tšwelago Pele (CI/CD) . Mokgwa wo o gatelela bohlokwa bja go itiriša phetišetšo ya khoutu ka ditikologong tše di fapanego, go nolofatša ditshepedišo tša mošomo tša tlhabollo le tšweletšo.


Didirišwa tša go swana le GitLab CI le CircleCI di fa ditharollo tše di tiilego tša go itiriša ditshepedišo tša go dira diteko le tša go tsenya tirišong. Go tlaleletša, tšhomišo ya didirišwa tša go ngwala dingwalwa tša go swana le Ansible le Terraform e godiša gape go itirela mo, go dumelela kabo le taolo ya mananeokgoparara ka khoutu.


Dithekinolotši tše di tla go thuša go aga phaephe ye e se nago mathata yeo e šuthišago khoutu go tšwa tlhabollong go ya tšweletšong ka nepagalo le go botega. Ka go kopanya didirišwa tše ka gare ga tshepedišo ya gago ya mošomo, o hloma tlhako yeo e sa akgofišego fela medikologo ya tlhabollo eupša gape e netefatša go se fetoge le go tsepama go ralala le ditikologo.


7. Tikologo

Go hlola le go laola tikologo ya tlhabollo ke karolo ya motheo eupša e raragane ya modikologo wa bophelo wa protšeke efe goba efe. Go hlama tikologo yeo e ka lekanyetšwago le yeo e ka hlokomelwago go ka bonagala e le mo go boifišago, kudu-kudu go dihlopha tšeo di se nago setsebi se se ineetšego sa DevOps.


Go dihlopha tše dintši, karabo ya potšišo mabapi le mokgwa o mokaone wa taolo ya tikologo e letše go dirišeng ditirelo tše di theilwego lerung le go tsenya dikhontheina. Le mo, AWS, Google Cloud, le Azure di fana ka mohuta wa ditirelo tšeo di ka rulaganywago go swanela bogolo le go raragana ga projeke ya gago. Diforamo tše di fa didirišwa tše di nyakegago go hlola ditikologo tše di fetofetogago, tše di ka lekanyetšwago ntle le tlhokego ya taolo ya mananeokgoparara ye e nabilego. Go feta fao, go amogelwa ga theknolotši ya go swana le Docker le Kubernetes go dira gore go tsenywa tirišong go ralala le magato a go fapana a tlhabollo, diteko, le tšweletšo go se fetoge le go tshepagala.


Go aga tikologo ye e šomago gabotse le ya boiketlo ga se ka ga peakanyo ya seva fela eupša gape go mabapi le peakanyo ya ditikologo tša selegae bakeng sa bahlami . Sebopego se se bohlokwa kudu go DevOps, ka ge gantši ba hlama dingwalwa go nolofatša tshepedišo ya go thoma diprotšeke ka mo nageng. Lega go le bjalo, modiro wo ga se ka mehla e lego o bonolo. Ka mohlala, go lokišetša ditikologo tša selegae ka go .NET e ka ba tlhohlo kudu, go gatelela go nyakega ga go kgetha theknolotši le didirišwa tšeo di nolofatšago bobedi dipeakanyo tša seva le tša selegae. Go netefatša gore bahlami ba na le phihlelelo ye e se nago mathata go ditikologo tša tlhabollo ya selegae tše di šomago gabotse go bohlokwa go hlokomela tšweletšo le go nolofatša tshepedišo ya mošomo ye e se nago mathata.


Go kgetha mokgobo wa seva wa maleba wa projeke ya gago go swana le go bea metheo ya moago: go nyaka go naganišiša ka kelohloko, ponelopele le tekatekano magareng ga dinyakwa tša bjale le kgolo ya ka moso. Kgetho ye nngwe le ye nngwe yeo o e dirago e ama katlego ya protšeke ya gago le bokgoni bja yona bja go tlwaela le go atlega mo sebopegong sa theknolotši seo se fetogago. Ka sehlogo se, ke be ke ikemišeditše go go hlahla diphethong tše tše bohlokwa, ke go hlomela ka ditemogo tša go swaragana le dilo tše di raraganego tšeo di lego ka pele. Ke tshepa gore ditemogo tšeo o di hweditšego lehono di tla go thuša go dira dikgetho tše di nago le tsebo tšeo di go išago katlegong ya diprotšeke tša gago tša bjale le tša ka moso!



THUTO YA MOHLALA A: PROJEKE YA SETLHOKOMEDI SA MAAKA A BANTŠI

Ka tlhabollo ya sešuthi sa maaka seo se bulago tsela seo se hlametšwego go dira diteko tša bontši, e lego projeke yeo e swailwego e le ya mathomo ya mohuta wa yona kua Yuropa Bohlabela, ke ile ka lebeletšana le kgetho ya mokgobo wa seva bjalo ka moetapele wa sehlopha sa tlhabollo. Dinyakwa tša motheo tša protšeke – palo ye kgolo ya dikgokagano tša microservice le ditiro tša faele tše di nabilego go šoma ditšweletšwa tša disensara tše di fapanego – di be di nyaka tharollo ya morago ye e tiilego eupša e fetofetogago.


Re ile ra kgetha Python ka FastAPI go feta baphenkgišani ba bangwe ba go swana le Python / Django le Go / Fiber. Sephetho se be se ithekgile ka thekgo ya maemo a godimo ya FastAPI ya mananeo a asynchronous, e lego tšobotsi ye bohlokwa ya go swara dinyakwa tša go šoma ka datha tše di tseneletšego tša projeke ka bokgoni. Django, le ge e le ye maatla, e ile ya bewa ka thoko ka lebaka la tlhago ya yona ya go sepelelana, yeo e bego e sa kgone go fihlelela dinyakwa tša rena tša go swara datha ya nako e tee ye e phagamego le ya nako ya nnete. Ka mo go swanago, Go e ile ya lebelelwa ka lebaka la tshepedišo ya yona eupša mafelelong ya feta go thekga bokgoni bja tlhabollo ya ka pela bja FastAPI le thekgo ya yona ye e ageleditšwego ka gare ya ditokomane tša Swagger, yeo e bego e le ya bohlokwa kudu bakeng sa lenaneo la rena la nako la tlhabollo ya MVP ye e tiilego.


Ka nako e swanago, projeke e be e nyaka gore go hlongwe tšobotsi ya softcam yeo e kgonago go laola dikgokagano tša webcam le go lebiša moela wa bidio go ralala le dikanale tše di fapa-fapanego. C ++ e ile ya ba leleme la kgetho bakeng sa mošomo wo, ka lebaka la lebelo la yona la phethagatšo leo le sa bapišwego le go sepelelana ga sefala sa sefala.


Diphetho tšeo re di tšerego ka ga projeke yeo ga se tša nolofatša fela katlego ya mathomo ya projeke eupša di beile motheo wo o tiilego wa kgolo ya yona ye e tšwelago pele le go tlwaelana le maemo.

THUTO YA MOHLALA B: MARTIAL ARTS CLUB CRM

For this project, I initially opted for Python and Django , khetha bona bakeng sa bokgoni ba bona ntshetsopele ka potlako bohlokoa bakeng sa thakgolwa ka potlako. Kgetho ye e ipontšhitše e šoma gabotse mo dikgatong tša mathomo, e tsenya letsogo thwii go oketšegeng ga letseno la dihlopha ka taolo ye e kaonafetšego ya go ba gona.


Ge bogolo bja projeke bo katološwa go akaretša dikarolo tša go swana le taolo ya bašomi, ditshekatsheko, le tshepedišo ya melaetša ya ka gare, mellwane ya Django ya go swara ditshepedišo tše di raraganego, tša nako e tee e ile ya bonagala. Temogo ye e ile ya ntira gore ke kopanye Go, ke diriša di-goroutines tša yona le Fasthttp bakeng sa tlhabollo ya moromiwa wa rena wa ka gare. Tiragatšo ya Go ya go laola mešomo ya nako e tee e re thušitše go katološa tšhomišo ya CRM, ya re dumelela go boloka tshepedišo ya godimo ka tšhelete ye nnyane ya godimo.


Sephetho sa go šomiša mokgwa wa theknolotši ya motswako, go šomiša Django bakeng sa mešomo ya motheo le Go bakeng sa dikarolo tša tshepedišo ya godimo, se ipontšhitše e le se bohlokwa kudu. Leano le le ile la ntumelela go lekalekanya tlhabollo ya ka pela le go oketšega, go netefatša gore CRM e ka tšwelela go fihlelela dinyakwa tše di golago tša sehlopha.