Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Ka anyị tụlee ihe mere CI ngwá ọrụ na CI bụ kpamkpam dị iche iche ihe.

Kedu ihe mgbu CI zubere iji dozie, ebee ka echiche ahụ sitere, kedu ihe nkwenye kachasị ọhụrụ na ọ na-arụ ọrụ, otu esi aghọta na ị nwere omume ọ bụghị naanị arụnyere Jenkins.

Echiche nke ịme akụkọ banyere Njikọ Na-aga n'ihu pụtara otu afọ gara aga, mgbe m na-aga maka ajụjụ ọnụ na ịchọ ọrụ. Agwara m ụlọ ọrụ 10-15 okwu, naanị otu n'ime ha nwere ike ịza nke ọma ihe CI bụ ma kọwaa otú ha siri mata na ha enweghị ya. Ndị ọzọ na-ekwu okwu nzuzu na-enweghị isi banyere Jenkins :) Ọfọn, anyị nwere Jenkins, ọ na-ewuli, CI! N'oge akụkọ ahụ, m ga-anwa ịkọwa ihe Njikọ Na-aga n'ihu bụ n'ezie yana ihe kpatara Jenkins na ngwaọrụ ndị yiri ya nwere mmekọrịta adịghị ike na nke a.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Yabụ, kedu ihe na-abata n'uche mgbe ị nụrụ okwu CI? Ọtụtụ ndị mmadụ ga-eche Jenkins, Gitlab CI, Travis, wdg.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Ọbụna ma ọ bụrụ na anyị google ya, ọ ga-enye anyị ngwá ọrụ ndị a.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Ọ bụrụ na ị maara nke ọma ịjụ, ozugbo ị depụtachara ngwaọrụ ahụ, ha ga-agwa gị na CI bụ mgbe ị na-ewu ma na-anwale ule na arịrịọ Pull maka itinye aka.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Njikọ na-aga n'ihu abụghị maka ngwaọrụ, ọ bụghị maka mgbakọ nwere ule na alaka! Njikọ aka na-aga n'ihu bụ omume nke ijikọ koodu ọhụrụ ugboro ugboro yana iji ya adịghị mkpa ma ọlị ịgbachi Jenkins, GitLab, wdg.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Tupu anyị achọpụta ihe CI zuru oke dị ka, ka anyị buru ụzọ banye n'ime ihe ndị gbara ya gburugburu wee nwee mmetụta mgbu ha na-achọ idozi.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Ha wepụrụkwa ihe mgbu nke ịrụkọ ọrụ ọnụ dị ka otu!

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Ka anyị leba anya n'ihe atụ nke ihe isi ike ndị mmepe na-eche ihu mgbe ha na-etolite na otu. N'ebe a, anyị nwere ọrụ, ngalaba ukwu na git na ndị mmepe abụọ.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Ha wee malite ịrụ ọrụ dị ka onye ọ bụla si mara ya kemgbe. Anyị rụrụ ọrụ na nnukwu atụmatụ nke ihe, mepụta alaka ụlọ ọrụ ma dee koodu ahụ.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Otu mechachara atụmatụ ahụ ngwa ngwa wee jikọta ya na nna ukwu.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Nke abụọ chọkwuru oge, ọ jikọtara ya ma mechaa na esemokwu. Ugbu a, kama ide atụmatụ ndị ahịa chọrọ, onye mmepụta na-etinye oge na ume ya iji dozie esemokwu.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Ka ọ na-esikwu ike ijikọta njirimara gị na onye nwe ya, ka anyị na-etinyekwu oge na ya. M gosikwara nke a site n'iji atụ dị mfe. Nke a bụ ihe atụ ebe enwere naanị ndị mmepe 2, Cheedị ma ọ bụrụ na mmadụ 10 ma ọ bụ 15 ma ọ bụ 100 nọ na ụlọ ọrụ degara otu ebe nchekwa. Ị ga-agba ara iji dozie esemokwu ndị a niile.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Enwere ikpe dịtụ iche. Anyị nwere nna ukwu na ụfọdụ ndị mmepe na-eme ihe.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Ha kere alaka.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Otu nwụrụ, ihe niile dị mma, ọ gafere ọrụ ahụ.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Onye nrụpụta nke abụọ, ka ọ dị ugbu a, nyefere ọrụ ya. Ka anyị kwuo na o zitere ya maka nyocha. Ọtụtụ ụlọ ọrụ nwere omume a na-akpọ nyochaa. N'otu aka ahụ, omume a dị mma ma baa uru, n'aka nke ọzọ, ọ na-ebelata anyị n'ọtụtụ ụzọ. Anyị agaghị abanye na nke ahụ, mana nke a bụ ezigbo ihe atụ nke ihe akụkọ nyocha na-adịghị mma nwere ike iduga. Ị nyefeela arịrịọ ịdọrọ maka nyocha. Ọ nweghị ihe ọzọ onye nrụpụta ga-eme. Gịnị ka ọ na-amalite ime? Ọ na-amalite ịrụ ọrụ ndị ọzọ.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

N'ime oge a, onye nrụpụta nke abụọ mere ihe ọzọ.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Nke mbụ rụchara ọrụ nke atọ.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Ma ka ogologo oge gachara, a nwalere nyocha ya, ọ na-agbalịkwa ka ọ kweta. Yabụ kedu ihe na-eme? Ọ na-ejide ọnụ ọgụgụ dị ukwuu nke esemokwu. Gịnị kpatara? N'ihi na mgbe arịrịọ ịdọrọ ya na-adabere na nyocha ahụ, ọtụtụ ihe agbanweela na koodu ahụ.

Na mgbakwunye na akụkọ nwere esemokwu, enwere akụkọ nwere nkwukọrịta. Mgbe eri gị na-adabere na nyocha, ka ọ na-eche ihe, mgbe ị na-arụ ọrụ ogologo oge, ị kwụsịrị nyochaa ihe ọzọ na-agbanwe na koodu koodu nke ọrụ gị. Ikekwe ihe ị na-achọ idozi ugbu a edozilarị ụnyaahụ ma ị nwere ike were usoro ụfọdụ wee jiri ya mee ihe ọzọ. Mana ị gaghị ahụ nke a n'ihi na ị na-arụ ọrụ mgbe niile na alaka ụlọ ọrụ ochie. Alaka a emechiela anya mgbe niile na-eme ka ị dozie esemokwu jikọrọ ọnụ.

Ọ na-apụta na ọ bụrụ na anyị na-arụ ọrụ dịka otu, ya bụ, ọ bụghị otu onye na-agbagharị na ebe nchekwa ahụ, ma ndị mmadụ 5-10, mgbe ahụ ka anyị na-adịghị etinye koodu anyị na nna ukwu, otú ahụ ka anyị na-ata ahụhụ n'ihi na anyị ga-achọ n'ikpeazụ. ihe wee jikọta ya. Na ka anyị na-enwekwu esemokwu, na ụdị ochie anyị na-arụ ọrụ, ka anyị na-enwekwu nsogbu.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Imekọ ihe ọnụ na-egbu mgbu! Anyị na-enweta ụzọ ibe anyị mgbe niile.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Achọpụtara nsogbu a ihe karịrị afọ iri abụọ gara aga. Achọtara m aha mbụ gbasara omume nke njikọta na-aga n'ihu na mmemme oke.

Mmemme dị oke egwu bụ usoro agile izizi. Ibe ahụ pụtara na 96. Na echiche bụ iji ụfọdụ ụdị mmemme mmemme, atụmatụ na ihe ndị ọzọ, ka mmepe ahụ wee gbanwee dị ka o kwere mee, ka anyị wee nwee ike ime ngwa ngwa maka mgbanwe ọ bụla ma ọ bụ ihe ọ bụla chọrọ n'aka ndị ahịa anyị. Ma ha malitere ihu nke a afọ 24 gara aga, na ọ bụrụ na ị na-eme ihe ruo ogologo oge na n'akụkụ, na ị na-etinyekwu oge na ya n'ihi na ị nwere esemokwu.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Ugbu a, anyị ga-enyocha nkebi ahịrịokwu ahụ "Mmekọrịta Na-aga n'ihu" n'otu n'otu. Ọ bụrụ na anyị atụgharịa ya ozugbo, anyị ga-enweta ntinye aka na-aga n'ihu. Ma otú na-aga n'ihu na ọ bụghị nnọọ doro anya na ọ bụ nnọọ kwụsị. Mana ole mwekota ọ nwere apụtachaghịkwa nke ọma.

Ya mere, m na-enye gị okwu sitere na Extreme Programming ugbu a. Anyị ga-enyochakwa okwu abụọ ahụ iche iche.

Integration - Dị ka m kwuru na mbụ, anyị na-agbalịsi ike hụ na onye ọ bụla engineer na-arụ ọrụ na kasị ugbu a version nke koodu, nke mere na ọ na-agbalịsi ike tinye ya koodu mgbe ọ bụla o kwere omume na a nkịtị alaka, nke mere na ndị a bụ obere alaka. N'ihi na ọ bụrụ na ha buru ibu, mgbe ahụ, anyị nwere ike mfe ịrapagidesi ike na ngwakọta esemokwu otu izu. Nke a bụ eziokwu karịsịa ma ọ bụrụ na anyị nwere ogologo oge mmepe mmepe dị ka mmiri mmiri, ebe onye mmepụta gara otu ọnwa iji belata ụfọdụ nnukwu atụmatụ. Na ọ ga-arapara n'ahụ na mwekota ogbo ruo ogologo oge.

Mgbakwunye bụ mgbe anyị na-ewere alaka anyị wee jikọta ya na nna ukwu, anyị na-ejikọta ya. Enwere nhọrọ kachasị mgbe anyị bụ onye nrụpụta transbase, ebe anyị na-agba mbọ hụ na anyị degara nna ukwu akwụkwọ ozi ozugbo na-enweghị alaka ọ bụla.

N'ozuzu, mwekota pụtara na-ewere koodu gị na ịdọrọ ya na nna ukwu.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Kedu ihe pụtara ebe a site na okwu a na-aga n'ihu, gịnị ka a na-akpọ continuity? Omume na-egosi na onye nrụpụta na-agba mbọ ijikọ koodu ya ngwa ngwa o kwere mee. Nke a bụ ebumnuche ya mgbe ọ na-arụ ọrụ ọ bụla - iji nweta koodu ya na nna ukwu ngwa ngwa o kwere mee. N'ime ụwa zuru oke, ndị mmepe ga-eme nke a kwa awa ole na ole. Ya bụ, ị were obere nsogbu wee jikọta ya na nna ukwu. Ihe niile dị mma. Nke a bụ ihe ị na-agba mbọ. A ghaghị ime nke a mgbe niile. Ozugbo i mere ihe, ị na-etinye ya ozugbo na nna ukwu.

Na onye na-emepụta ihe na-eme ihe na-ahụ maka ihe o mere iji mee ka ọ rụọ ọrụ ma ghara imebi ihe ọ bụla. Nke a bụ ebe akụkọ ule na-apụtakarị. Anyị chọrọ ịme ụfọdụ ule na ntinye aka anyị, na njikọta anyị, iji hụ na ọ na-arụ ọrụ. Ma nke a bụ ebe Jenkins nwere ike inyere gị aka.

Ma na akụkọ: ka anyị mee ka mgbanwe dị ntakịrị, ka ọrụ ndị ahụ dị ntakịrị, ka anyị mee nsogbu ma gbalịa ozugbo itinye ya n'ime nna ukwu - ọ dịghị Jenkins ga-enyere aka ebe a. N'ihi na Jenkins ga-enyere gị aka ịme ule.

Ị nwere ike ime na-enweghị ha. Nke a agaghị eme gị ahụ́ ma ọlị. N'ihi na ihe mgbaru ọsọ nke omume bụ ịlele mgbe ọ bụla o kwere mee, ka ị ghara igbu oge buru ibu na esemokwu ọ bụla n'ọdịnihu.

Ka anyị were ya na n'ihi ihe ụfọdụ anyị nọ na 2020 enweghị ịntanetị. Anyị na-arụkwa ọrụ na mpaghara. Anyị enweghị Jenkins. Nke a dị mma. Ị ka nwere ike ịga n'ihu mee alaka mpaghara. I dere ụfọdụ koodu na ya. Anyị rụchara ọrụ ahụ n'ime awa 3-4. Anyị gbanwere ịbụ nna ukwu, mee git pull, wee jikọta alaka anyị n'ebe ahụ. Njikere. Ọ bụrụ na ị na-eme nke a ugboro ugboro, daalụ, ị nwere Continuous Integration!

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Kedu ihe akaebe dị n'ụwa nke oge a na ọ bara uru itinye ume na ya? N'ihi na n'ozuzu o siri ike. Ọ bụrụ na ị na-agbalị ịrụ ọrụ dị ka nke a, ị ga-aghọta na ụfọdụ atụmatụ ga-emetụta ugbu a, ị ga-etinyekwu oge na decomposing ọrụ. N'ihi na ọ bụrụ na ị na-eme mmadụ ..., mgbe ahụ, ị ​​gaghị enwe ike ịbịakwute okwu ngwa ngwa ma, ya mere, ga-abanye na nsogbu. Ị gakwaghị enwe omume.

Ọ ga-adịkwa ọnụ. Ọ gaghị ekwe omume ịrụ ọrụ ozugbo site na echi na-eji Continuous Integration. Ọ ga-ewe gị ogologo oge iji mara ya ahụ́, ọ ga-ewe gị ogologo oge iji mara gị ahụ́ ịrụrụ arụrụ arụ, ọ ga-ewe ogologo oge iji mara gị ahụ́ imegharị omume nlegharị anya, ọ bụrụ na i nwere otu. . Maka na ebumnuche anyị bụ ka ọ gbazee taa. Ma ọ bụrụ na ị na-eme nyocha n'ime ụbọchị atọ, mgbe ahụ ị nwere nsogbu na Continuous Integration adịghị arụ ọrụ maka gị.

Mana anyị nwere ihe akaebe ọ bụla dị mkpa ugbu a nke na-agwa anyị na itinye ego na omume a nwere ezi uche?

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Ihe mbụ batara m n'obi bụ State of DevOps. Nke a bụ ọmụmụ ihe ụmụ okorobịa ahụ na-eme kemgbe afọ 7. Ugbu a, ha na-eme ya dị ka nzukọ nọọrọ onwe ha, mana n'okpuru Google.

Na ọmụmụ 2018 ha gosipụtara mmekọrịta dị n'etiti ụlọ ọrụ ndị na-agbalị iji alaka ndị dị mkpirikpi na-ejikọta ngwa ngwa, na-ejikọta ugboro ugboro, ma nwee ihe ngosi arụmọrụ IT ka mma.

Kedu ihe ndị a na-egosi? Ndị a bụ metrics 4 ha na-enweta n'aka ụlọ ọrụ niile na akwụkwọ ajụjụ ha: oge ​​ntinye, oge na-eduga maka mgbanwe, oge iji weghachi ọrụ, gbanwee ọnụego ọdịda.

Ma, nke mbụ, enwere njikọ a, anyị maara na ụlọ ọrụ na-atụkarị oge nwere metrik ka mma. Na ha nwere nkewa nke ụlọ ọrụ n'ime ọtụtụ ụdị: ndị a bụ ụlọ ọrụ na-adịghị ngwa ngwa na-emepụta ihe na-eji nwayọọ nwayọọ, ndị na-eme ihe nkiri, ndị na-eme ihe nkiri na ndị ọkachamara. Ndị ọkachamara bụ Netflix, Amazon, nke dị oke ngwa ngwa, na-eme ihe niile ngwa ngwa, mara mma na nke ọma.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

Akụkọ nke abụọ, nke mere otu ọnwa gara aga. Teknụzụ Radar nwere nnukwu akụkọ gbasara Gitflow. Gitflow dị iche na ndị ọzọ niile na alaka ya dị ogologo ndụ. Enwere alaka ntọhapụ na-adị ndụ ogologo oge, yana alaka ndị na-adịkwa ndụ ogologo oge. Omume a na Teknụzụ Radar akwagala na HOLD. Gịnị kpatara? N'ihi na ndị mmadụ na-eche ihe mgbu nke njikọta ihu.

Ọ bụrụ na alaka gị dị ogologo ogologo oge, ọ na-arapara, na-ere ure, anyị na-amalite itinyekwu oge na-agbalị ime mgbanwe ụfọdụ na ya.

Na nso nso a onye edemede Gitflow kwuru na ọ bụrụ na ihe mgbaru ọsọ gị bụ Njikọ Na-aga n'ihu, ọ bụrụ na ebumnuche gị bụ na ịchọrọ ịtụgharị mgbe ọ bụla o kwere mee, mgbe ahụ Gitflow bụ echiche ọjọọ. Ọ gbakwunyere iche na akụkọ ahụ na ọ bụrụ na ị nwere azụ azụ ebe ị nwere ike ịgbalịsi ike maka nke a, mgbe ahụ Gitflow bụ ihe karịrị gị, n'ihi na Gitflow ga-ebelata gị, Gitflow ga-eme ka ị nwee nsogbu na ntinye.

Nke a apụtaghị na Gitflow dị njọ ma ekwesighi iji ya. Ọ bụ maka oge ndị ọzọ. Dịka ọmụmaatụ, mgbe ịchọrọ ịkwado ọtụtụ ụdị ọrụ ma ọ bụ ngwa, ya bụ ebe ịchọrọ nkwado ruo ogologo oge.

Ma ọ bụrụ na ị na-agwa ndị na-akwado ọrụ ndị dị otú ahụ okwu, ị ga-anụ ọtụtụ ihe mgbu banyere eziokwu na nsụgharị a bụ 3.2, nke bụ 4 ọnwa gara aga, ma nke a adịghị etinye n'ime ya na ugbu a, iji mee ya. ịkwesịrị ịme ụyọkọ mgbanwe. Ma ugbu a, ha rapaara ọzọ, ma ugbu a, ha na-agbagharị gburugburu otu izu na-agbalị imezu ihe ọhụrụ.

Dị ka Alexander Kovalev kwuru n'ụzọ ziri ezi na nkata, mmekọrịta abụghị otu ihe kpatara ya. Nke a bụ eziokwu. Ya bụ, ọ nweghị njikọ kpọmkwem na ọ bụrụ na ị nwere Njikọ Na-aga n'ihu, mgbe ahụ, metrik niile ga-adị mma. Ma enwere njikọ dị mma na ọ bụrụ na otu bụ otu, mgbe ahụ ọ ga-abụkwa nke ọzọ. Ọ bụghị eziokwu, ma eleghị anya. Ọ bụ naanị njikọta.

Mmekọrịta na-aga n'ihu dịka omume, ọ bụghị Jenkins. Andrey Alexandrov

O yiri ka anyị na-ama na-eme ihe, o yiri ka anyị na-ama merging, ma olee otú anyị ga-esi ghọta na anyị ka nwere Continuous Integration, na anyị na-merging nnọọ mgbe?

Jez Humble bụ onye odee akwụkwọ ntuziaka, Accelerate, webụsaịtị Nnyefe na-aga n'ihu, yana akwụkwọ Nnyefe Na-aga n'ihu. Ọ na-enye ule a:

  • Koodu injinia na-agakwuru nna ukwu kwa ụbọchị.
  • Maka nkwa ọ bụla ị na-eme ule unit.
  • Ihe owuwu na nna ukwu ahụ dara, edozi ya n'ihe dị ka nkeji iri.

Ọ na-atụ aro iji ule dị ka nke a iji jide n'aka na ị nwere omume zuru oke.

Achọpụtara m na nke ikpeazụ bụ ntakịrị esemokwu. Nke ahụ bụ, ọ bụrụ na ị nwere ike idozi ya na nkeji 10, mgbe ahụ ị nwere Njikọ Na-aga n'ihu, ọ na-ada ụda ntakịrị, n'echiche m, ma ọ bụ ihe ezi uche dị na ya. Gịnị kpatara? N'ihi na ọ bụrụ na ị na-ajụkarị oyi, ọ pụtara na mgbanwe gị dị ntakịrị. Ọ bụrụ na obere mgbanwe pụtara na onye nwe ụlọ gị mebiri emebi, mgbe ahụ ị nwere ike ịchọta ihe atụ ngwa ngwa n'ihi na mgbanwe ahụ dị ntakịrị. N'ebe a, ị nwere obere njikọ, ahịrị 20-30 gbanwere. Na, n'ihi ya, ị nwere ike ịghọta ngwa ngwa ihe kpatara ya, n'ihi na mgbanwe ndị ahụ dị ntakịrị, ị nwere mpaghara dị ntakịrị iji chọọ nsogbu ahụ.

Na ọbụna ma ọ bụrụ na anyị prod dara iche mgbe a tọhapụrụ, mgbe ahụ ọ bụrụ na anyị nwere omume nke Continuous Integration, ọ na-adịrị anyị mfe karị ime ihe, n'ihi na mgbanwe ndị dị ntakịrị. Ee, nke a ga-emetụta atụmatụ. Nke a ga-afụ ụfụ. Na, ma eleghị anya, ihe kachasị sie ike na omume a bụ ịmara na ị na-agbaji ọrụ, ya bụ, otu esi eme ya ka i wee were ihe mee ya n'ime awa ole na ole ma n'otu oge ahụ gafere nyocha, ma ọ bụrụ ị nwere otu. Nyochaa bụ ihe mgbu dị iche.

Nnwale otu otu bụ naanị onye inyeaka na-enyere gị aka ịghọta ma njikọta gị ọ gara nke ọma yana ma ọ nweghị ihe agbajiri. N'uche nke m, nke a abụghịkwa iwu kpamkpam, n'ihi na nke a abụghị isi ihe omume.

Nke a bụ okwu mmalite dị mkpirikpi maka njikọta na-aga n'ihu. Nke ahụ bụ naanị omume a. Adị m njikere maka ajụjụ.

Aga m achịkọta nkenke ọzọ:

  • Njikọ na-aga n'ihu abụghị Jenkins, ọ bụghị Gitlab.
  • Nke a abụghị ngwá ọrụ, ọ bụ omume na anyị na-ejikọta koodu anyị na nna ukwu mgbe ọ bụla o kwere mee.
  • Anyị na-eme nke a iji zere nnukwu ihe mgbu na-ebilite na njikọta n'ọdịnihu, ya bụ, anyị na-enweta ntakịrị ihe mgbu ugbu a ka anyị ghara inwekwu ahụmahụ n'ọdịnihu. Nke ahụ bụ isi ihe niile.
  • N'akụkụ e nwere nkwurịta okwu site na koodu, ma m nnọọ adịkarịghị ịhụ nke a, ma nke a bụkwa ihe e mere ya.

Ajụjụ gị

Kedu ihe a ga-eme na ọrụ anaghị ere ere?

ire ere. Kedu ihe bụ nsogbu? Ị nwere ike ịnye ihe atụ na e nwere ọrụ ma ọ naghị emebi emebi?

Enwere ọrụ ndị na-enweghị ike imebi site na okwu ahụ "zuru oke", dịka ọmụmaatụ, ndị chọrọ ọkachamara miri emi na nke nwere ike idozi n'ime otu ọnwa iji nweta nsonaazụ digestible.

Ọ bụrụ na m ghọtara gị nke ọma, mgbe ahụ enwere ọrụ buru ibu na nke siri ike, nke a ga-esi na ya pụta naanị n'ime otu ọnwa?

Ee nke ahụ ziri ezi. Ee, ọ ga-ekwe omume iji nyochaa nsonaazụ ya tupu otu ọnwa.

Ọ dị mma. N'ozuzu nke a abụghị nsogbu. Gịnị kpatara? N'ihi na na nke a, mgbe anyị na-ekwu banyere alaka alaka, anyị na-adịghị na-ekwu banyere a alaka nke nwere atụmatụ. Atụmatụ nwere ike ịbụ nnukwu na mgbagwoju anya. Ha nwere ike imetụta ọnụ ọgụgụ buru ibu nke components. Ma eleghị anya, anyị apụghị ime ha kpam kpam n'otu alaka. Nke a dị mma. Naanị anyị kwesịrị ịgbasa akụkọ a. Ọ bụrụ na njirimara adịghị njikere kpamkpam, nke a apụtaghị na ụfọdụ koodu ya enweghị ike ijikọ. Ị gbakwunyere, ka anyị kwuo, mbugharị na enwere usoro ụfọdụ n'ime njirimara ahụ. Ka anyị kwuo na ị nwere ogbo - mee njem, tinye usoro ọhụrụ. Ị nwekwara ike ịlele ihe ndị a kwa ụbọchị.

Ọ dị mma. Kedu ihe bụ uru mgbe ahụ?

Gịnị bụ uru igbu obere ihe kwa ụbọchị?

Ee.

Ọ bụrụ na ha agbajie ihe, ị na-ahụ ya ozugbo. Ị nwere obere mpempe agbajiri ihe, ọ na-adịrị gị mfe idozi ya. Isi ihe bụ na ijikọta obere mpempe ugbu a dị mfe karịa ijikọta ihe buru ibu n'ime izu ole na ole. Na isi ihe nke atọ bụ na ndị injinia ndị ọzọ ga-arụ ọrụ na ụdị koodu dị ugbu a. Ha ga-ahụ na agbakwunyere ụfọdụ mbugharị ebe a, wee pụta usoro ụfọdụ nke ha nwekwara ike chọọ iji. Onye ọ bụla ga-ahụ ihe na-eme na koodu gị. Ọ bụ maka ihe atọ a ka a na-eme omume.

Daalụ, emechiela okwu a!

(Oleg Soroka) Enwere m ike ịgbakwunye? I kwuru ihe niile nke ọma, achọrọ m itinye otu akpaokwu.

Ya mere

Site na njikọta na-aga n'ihu, a na-ejikọta koodu ahụ na ngalaba a na-ahụkarị ọ bụghị mgbe njirimara ahụ dị njikere kpamkpam, mana mgbe ụlọ ahụ kwụsịrị imebi. Ma ị nwere ike itinye onwe gị n'enweghị nsogbu iji mara ọtụtụ ugboro n'ụbọchị dịka ịchọrọ. Akụkụ nke abụọ bụ na ọ bụrụ n'ihi ihe ụfọdụ ị nweghị ike imebi ọrụ kwa ọnwa n'ime ọrụ ma ọ dịkarịa ala ụbọchị atọ, ana m agbachi nkịtị ihe dị ka awa atọ, mgbe ahụ ị nwere nnukwu nsogbu. Na eziokwu ahụ bụ na ị nweghị Continuous Integration bụ nke kacha nta n'ime nsogbu ndị a. Nke a pụtara na ị na-enwe nsogbu n'ịrụ ụlọ na omume injinia efu. N'ihi na ọ bụrụgodị na nke a bụ nyocha, mgbe ahụ, n'ọnọdụ ọ bụla, a ghaghị ịmepụta ya n'ụdị hypotheses ma ọ bụ okirikiri.

Anyị na-ekwu maka metrics 4 na-egosi ọdịiche dị n'etiti ụlọ ọrụ na-aga nke ọma na ndị na-adịghị ala ala. Anyị ka ga-adị ndụ ịhụ metrik anọ ndị a. Ọ bụrụ na nkezi ọrụ gị na-ewe otu ọnwa iji rụchaa, m ga-ebu ụzọ lekwasị anya na metrik a. M ga-ebutu ya ruo ụbọchị 4 mbụ. Ma mgbe nke ahụ gasịrị, amalitere m iche echiche banyere Continuous.

Aghọtara m gị nke ọma na ị chere na n'ozuzu ọ nweghị uru itinye ego na mmemme injinia ma ọ bụrụ na ọrụ ọ bụla na-ewe otu ọnwa iji rụchaa?

Ị nwere njikọta na-aga n'ihu. Ma enwere isiokwu dị otú ahụ na n'ime nkeji 10 ị nwere ike dozie ihe ndozi ma ọ bụ tụgharịa ya azụ. Were ya na ị bupụrụ ya. Ọzọkwa, ị na-enwekwa mbugharị na-aga n'ihu, ị kpọpụtara ya ka ọ bụrụ naanị mgbe ahụ chọpụtara na ihe adịghị mma. Ma ịkwesịrị ịtụgharị ya azụ, mana ị kwagarịrị nchekwa data gị. Ị nweelarị atụmatụ nchekwa data nke ụdị ọzọ, ọzọkwa, ị nwekwara ụdị nkwado ndabere na mpaghara, na e dekwara data ahụ n'ebe ahụ.

Kedu ihe ọzọ ị nwere? Ọ bụrụ na ị tụgharịa koodu ahụ, ọ nweghịzi ike iji nchekwa data emelitere arụ ọrụ.

Ntọala na-aga n'ihu, ee.

Ndị nwere omume injinia dara ogbenye yikarịrị ka agụbeghị akwụkwọ ahụ gbara ọkpụrụkpụ gbasara ... ma. Kedu ihe a ga-eme na ndabere? Ọ bụrụ na iweghachite site na nkwado ndabere na mpaghara, ọ pụtara na ị ga-atụfu data ị chịkọbara n'oge ahụ. Dịka ọmụmaatụ, anyị na-arụ ọrụ awa atọ na ụdị ọhụrụ nke nchekwa data, ndị ọrụ debanyere aha n'ebe ahụ. Ị na-ajụ ndabere ochie n'ihi na atụmatụ ahụ anaghị arụ ọrụ na ụdị ọhụrụ ahụ, ya mere ndị ọrụ a efunahụla gị. Ha enweghịkwa afọ ojuju, ha na-aṅụ iyi.

Iji mara usoro omume zuru oke na-akwado njikọta na-aga n'ihu na nnyefe na-aga n'ihu, ezughị oke ịmụta ka esi ede ihe.... Nke mbụ, enwere ike inwe ọtụtụ n'ime ha, ọ ga-abụ ihe na-adịghị mma. Na mgbakwunye, enwere ọtụtụ omume ndị ọzọ dị ka Scientific. Enwere omume dị otú ahụ, GitHub kwalitere ya n'otu oge. Nke a bụ mgbe ị nwere ma koodu ochie na koodu ọhụrụ na-agba ọsọ n'otu oge. Nke a bụ mgbe ị na-eme atụmatụ emechabeghị, mana ọ nwere ike weghachi ụfọdụ uru: ma ọ bụ ọrụ ma ọ bụ dị ka API zuru ike. Ị na-eme ma koodu ọhụrụ na koodu ochie, wee tulee ọdịiche dị n'etiti ha. Ma ọ bụrụ na e nwere ihe dị iche, mgbe ahụ ị na-abanye ihe omume a. N'ụzọ dị otú a, ị maara na ị nwere ihe ọhụrụ dị njikere ịpụta n'elu nke ochie ma ọ bụrụ na ị nwebeghị ihe dị iche n'etiti abụọ ahụ ruo oge ụfọdụ.

Enwere ọtụtụ narị omume ndị dị otú ahụ. M ga-atụ aro ka ịmalite site na mmepe transbase. Ọ bụghị 100% na Njikọ Na-aga n'ihu, ma omume ndị ahụ bụ otu, otu enweghị ike ibi ndụ nke ọma na-enweghị nke ọzọ.

Ị nyere mmepe transbase dịka ọmụmaatụ ebe ị nwere ike ịhụ omume ma ọ bụ ị na-atụ aro ka ndị mmadụ malite iji transbase debelopment?

Lee anya, n'ihi na ha agaghị enwe ike iji ya. Iji jiri ha mee ihe, ịkwesịrị ịgụ ọtụtụ ihe. Na mgbe mmadụ jụrụ, sị: "Ihe a ga-eme na atụmatụ na-ewe otu ọnwa, ọ pụtara na ọ gụbeghị banyere mmepe transbase." Agaghị m akwado ya ugbu a. M ga-adụ ọdụ ilekwasị anya naanị n'isiokwu nke otu esi ahazi ụkpụrụ ụlọ n'ụzọ ziri ezi na-agbaji nnukwu ọrụ n'ime obere obere. Nke a bụ ihe dị mkpa nke ire ere.

Nbibi bụ otu n'ime ngwaọrụ ndị na-ese ụkpụrụ ụlọ. Anyị na-ebu ụzọ mee nyocha, wee decomposition, mgbe ahụ njikọ, wee jikọta. Ma otu a ka ihe niile ga-esi dịrị anyị. Na anyị ka kwesịrị na-eto eto na-aga n'ihu mwekota site decomposition. Ajụjụ na-ebilite na ọkwa mbụ, anyị na-ekwukwa okwu banyere ọkwa nke anọ, ya bụ, ọtụtụ mgbe anyị na-eme njikọ, ka mma. Ọ ka dị oke n'oge ime nke a; ọ ga-adị mma ka ị buru ụzọ belata monolith gị.

Ịkwesịrị ịse ọtụtụ akụ na square na ụfọdụ eserese. Ị pụghị ikwu na ugbu a, m ga-egosi eserese ihe owuwu nke ngwa ọhụrụ ma gosipụta otu square, n'ime ya enwere bọtịnụ akwụkwọ ndụ akwụkwọ ndụ maka ngwa ahụ. N'ọnọdụ ọ bụla, a ga-enwekwu square na akụ. Eserese ọ bụla m hụrụ nwere ihe karịrị otu. Na ire ere, ọbụlagodi na ọkwa nke eserese eserese, amalitelarị ebe. Ya mere, enwere ike ịme oghere ndị ahụ n'onwe ha. Ọ bụrụ na ọ bụghị, mgbe ahụ enwere m ajụjụ buru ibu maka onye na-ese ụkpụrụ ụlọ.

Enwere ajụjụ sitere na nkata: "Ọ bụrụ na nyocha bụ iwu ma were ogologo oge, ikekwe otu ụbọchị ma ọ bụ karịa?"

Ị nwere nsogbu na omume. Nyocha ekwesịghị ịdịru otu ụbọchị ma ọ bụ karịa. Nke a bụ otu akụkọ ahụ na ajụjụ gara aga, naanị ntakịrị nro. Ọ bụrụ na nyocha na-aga n'ihu maka otu ụbọchị, mgbe ahụ, o yikarịrị ka nyocha a na-eme mgbanwe dị ukwuu. Nke a pụtara na ọ dị mkpa ka ọ dị ntakịrị. Na mmepe transbase, nke Oleg kwadoro, enwere akụkọ a na-akpọ nyochaa na-aga n'ihu. Echiche ya bụ na anyị na-eme arịrịọ dị nta dị otú ahụ na nzube, n'ihi na anyị na-agbalịsi ike ijikọta mgbe niile na ntakịrị oge. Ya mere, ịdọrọ arịrịọ na-agbanwe otu abstraction ma ọ bụ ahịrị 10. Daalụ maka nyocha a, ọ na-ewe anyị nkeji ole na ole.

Ọ bụrụ na nyocha ahụ were otu ụbọchị ma ọ bụ karịa, ọ nwere ihe adịghị mma. Mbụ, ị nwere ike inwe nsogbu ụfọdụ na ụkpụrụ ụlọ. Ma ọ bụ nke a bụ nnukwu mpempe koodu, ahịrị 1, dịka ọmụmaatụ. Ma ọ bụ ụkpụrụ ụlọ gị dị mgbagwoju anya nke na mmadụ enweghị ike ịghọta ya. Nke a bụ nsogbu dị ntakịrị n'akụkụ, mana a ga-edozikwa ya. Ikekwe ọ dịghị mkpa maka nyochaa ma ọlị. Anyị kwesịkwara iche echiche banyere nke a. Nyochaa bụ ihe na-eme ka ị daa mbà. O nwere uru ya n'ozuzu ya, mana ịkwesịrị ịghọta ihe mere ị na-eme ya. Nke a ọ bụ ụzọ ị ga-esi wepụta ozi ngwa ngwa, nke a bụ ụzọ ị ga-esi tinye ụkpụrụ ụfọdụ n'ime ma ọ bụ gịnị? Gịnị mere i ji chọọ nke a? N'ihi na ekwesịrị ime nyocha ahụ ngwa ngwa ma ọ bụ kagbuo kpamkpam. Ọ dị ka mmepe nke transbase - akụkọ ahụ mara mma nke ukwuu, mana ọ bụ naanị maka ụmụ okorobịa tozuru oke.

Banyere metrics 4, m ka ga-akwado iwepụ ha iji ghọta ihe nke a na-eduga na ya. Lelee ọnụọgụgụ, lee foto a, ka ihe niile dị njọ.

(Dmitry) Adị m njikere isoro gị banye na mkparịta ụka gbasara nke a. Ọnụọgụ na metrik niile dị mma, omume dị oke mma. Mana ịkwesịrị ịghọta ma azụmahịa ahụ chọrọ ya. Enwere ụlọ ọrụ na-achọghị ụdị ọsọ mgbanwe ahụ. Amaara m ụlọ ọrụ ebe enweghị ike ịme mgbanwe ọ bụla nkeji iri na ise. Ma ọ bụghị n'ihi na ha dị nnọọ njọ. Nke a bụ usoro ndụ dị otú ahụ. Na iji mee ka alaka ndị ahụ pụta ìhè, njirimara ntụgharị, ị chọrọ ihe ọmụma miri emi.

Ọ gbagwojuru anya. Ọ bụrụ na ịchọrọ ịgụ akụkọ gbasara njirimara ntụgharị n'ụzọ zuru ezu, ana m akwado ya nke ukwuu https://trunkbaseddevelopment.com/. Na e nwere a magburu onwe isiokwu Martin Fowler banyere toggle atụmatụ: ihe ụdị e nwere, ndụ cycles, wdg The toggle atụmatụ bụ mgbagwoju anya.

Ma ị ka azabeghị ajụjụ a: "Ọ dị Jenkins ka ọ bụ na ọ chọghị?"

Jenkins adịghị mkpa n'ọnọdụ ọ bụla n'ezie. Agbanyeghị, ngwaọrụ ndị ahụ: Jenkins, Gitlab ga-ewetara gị mma. Ị ga-ahụ na a na-agbakọta ma ọ bụ na-agbakọtaghị mgbakọ ahụ. Ha nwere ike inyere gị aka, mana ha agaghị enye gị omume. Ha nwere ike inye gị okirikiri - Ọ dị mma, ọ bụghị OK. Ma mgbe ahụ, ọ bụrụ na ị na-edekwa ule, n'ihi na ọ bụrụ na ọ dịghị ule, mgbe ahụ ọ fọrọ nke nta ka-enweghị isi. Ya mere, ọ dị mkpa n'ihi na ọ dị mfe karị, ma n'ozuzu ị nwere ike ibi ndụ na-enweghị ya, ị gaghị atụfu ọtụtụ ihe.

Ya bụ, ọ bụrụ na ị nwere omume, nke ahụ ọ pụtara na ị chọghị ya?

Nke ahụ dị mma. Ana m akwado ule Jez Humble. N'ebe ahụ enwere m àgwà ambivalent n'ebe ikpeazụ. Ma n'ozuzu, ọ bụrụ na ị nwere ihe atọ, ị na-ejikọta mgbe niile, ị na-agba ọsọ ule na-eme na nna ukwu, ị na-edozi ngwa ngwa na-ewu na nna ukwu, mgbe ahụ ma eleghị anya ị chọghị ihe ọ bụla ọzọ.

Ka anyị na-eche ajụjụ sitere n'aka ndị sonyere, enwere m ajụjụ. Anyị na-ekwu naanị maka koodu ngwaahịa. Ị jirila ya maka koodu akụrụngwa? Ọ̀ bụ otu koodu ahụ, ọ nwere otu ụkpụrụ na otu usoro ndụ ndụ, ka ọ̀ nwere usoro ndụ na ụkpụrụ dị iche iche? Na-emekarị, mgbe onye ọ bụla na-ekwu banyere Continuous Integration and Development, onye ọ bụla na-echefu na e nwekwara koodu akụrụngwa. Na nso nso a enweela ọtụtụ n'ime ya. Ekwesịrị iweta iwu ndị a niile ebe ahụ?

Ọbụghị na o kwesịrị ịdị, ọ ga-adị mma n'ihi na ọ ga-eme ka ndụ dịkwuo mfe n'otu ụzọ ahụ. Ozugbo anyị na-arụ ọrụ na koodu, ọ bụghị na bash scripts, ma anyị nwere koodu nkịtị.

Kwụsị, kwụsị, script bash bụkwa koodu. Emetụla ịhụnanya ochie aka.

Ọ dị mma, agaghị m zọda ncheta gị. Enwere m enweghị mmasị maka bash. Ọ na-agbaji jọrọ njọ na egwu mgbe niile. Na ọ na-agbajikarị n'enweghị atụ, nke mere na anaghị amasị m. Mana ọ dị mma, ka anyị kwuo na ị nwere koodu bash. Ma eleghị anya, aghọtaghị m n'ezie na enwere usoro ule nkịtị dị n'ebe ahụ. Anọghị m na ịmara. Anyị na-enwetakwa otu uru ahụ.

Ozugbo anyị na-arụ ọrụ na akụrụngwa dị ka koodu, anyị na-enweta otu nsogbu niile dị ka ndị mmepe. Ọnwa ole na ole gara aga, ahụrụ m ọnọdụ ebe onye ọrụ ibe zitere m arịrịọ ịdọrọ maka ahịrị 1 na bash. Ma ị na-anọkọ na nyocha ahụ maka awa 000. Otu nsogbu na-ebilite. Ọ ka bụ koodu. Ma ọ ka bụ mmekorita. Anyị na-arapara na arịrịọ ịdọrọ ma anyị na-arapara n'eziokwu ahụ bụ na anyị na-edozi otu esemokwu jikọrọ ọnụ na otu bash, dịka ọmụmaatụ.

Ana m elele ihe a niile na mmemme infra kacha mara mma ugbu a. Ewebatala m Pulumi n'ime akụrụngwa. Nke a bụ mmemme n'ụdị ya kachasị ọcha. N'ebe ahụ ọ ka mma karịa, n'ihi na enwere m ike niile nke asụsụ mmemme, ya bụ, emere m ọmarịcha ka ọ gbanwee na-acha anụnụ anụnụ na otu ifs na ihe niile dị mma. Ya bụ, mgbanwe m adịlarị na nna ukwu. Onye ọ bụla nwere ike ịhụ ya. Ndị injinia ndị ọzọ maara banyere ya. O nweelarị mmetụta n'ebe ahụ. Agbanyeghị, enyereghị ya aka maka akụrụngwa niile. Ọ gbanyere maka bench ule m, dịka ọmụmaatụ. Ya mere, ịza ajụjụ gị ọzọ, ọ dị mkpa. Ọ na-emekwa ka ndụ anyị dị mfe dị ka ndị injinia na-arụ ọrụ na koodu.

Ọ bụrụ na onye ọzọ nwere ajụjụ?

Enwere m ajụjụ. Achọrọ m ịga n'ihu na mkparịta ụka na Oleg. N'ozuzu, echere m na ị bụ eziokwu, na ọ bụrụ na ọrụ na-ewe otu ọnwa iji wuchaa, mgbe ahụ ị nwere nsogbu na architecture, ị nwere nsogbu na nyocha, decomposition, atụmatụ, wdg ma enwere m mmetụta na ọ bụrụ na ịmalite. na-agbalị ibi ndụ dịka Njikọ Na-aga n'ihu, mgbe ahụ, ị ​​​​ga-amalite imezi ihe mgbu na nhazi, n'ihi na ị gaghị esi na ya pụọ ​​n'ebe ọ bụla ọzọ.

(Oleg) Ee, nke ahụ bụ eziokwu. Omume a dị ka n'ịgba mbọ ka omume ọ bụla ọzọ siri ike na-agbanwe omenala. Ihe kacha sie ike imeri bụ àgwà, karịsịa àgwà ọjọọ. Ma ọ bụrụ na iji mejuputa omume a, a chọrọ mgbanwe dị ukwuu na omume nke ndị gbara gị gburugburu: ndị mmepe, njikwa, njikwa mmepụta, mgbe ahụ ihe ịtụnanya na-echere gị.

Kedu ihe ịtụnanya nwere ike ịdị? Ka anyị kwuo na ị na-ekpebi na ị ga-ejikọta ọtụtụ ugboro. Ma ị nwere ihe ndị ọzọ ejikọtara na njikọta, dịka ọmụmaatụ, arịa. Na n'ime ụlọ ọrụ gị, dịka ọmụmaatụ, enwere iwu na a ga-ederịrị ihe ọ bụla arịa n'ụzọ ụfọdụ n'ụdị usoro nchekwa ihe. Ọ na-ewekwa oge. Mmadụ kwesịrị ịlele igbe ahụ ya, dị ka onye njikwa ntọhapụ, nwalere arịa a iji hụ na ọ dịla njikere maka mwepụta na mmepụta. Ọ bụrụ na ọ na-ewe nkeji 5-10-15, mana ị na-eme nhazi ahụ otu ugboro n'izu, mgbe ahụ itinye ọkara awa otu ugboro n'izu bụ obere ụtụ isi.

Ọ bụrụ na ị na-eme na-aga n'ihu Integration ugboro 10 n'ụbọchị, mgbe 10 ugboro mkpa ka-amụba site 30 nkeji. Na nke a karịrị oge ọrụ nke njikwa ntọhapụ a. Naanị ime ya na-agwụ ya ike. Enwere akwụ ụgwọ maka ụfọdụ omume. Ọ gwụla.

Ma ịkwesịrị kagbuo iwu a ka ị gharazi ime ihe mkpofu dị otú ahụ, ya bụ na ị naghị eji aka gị kenye akara iji dekọọ ihe. Ị na-adabere kpamkpam n'ụfọdụ ule njikere nke akpaaka.

Ma ọ bụrụ na ịchọrọ ihe akaebe sitere n'aka mmadụ, nke mere na onye isi ahụ bịanyere aka na ya, ma ị gaghị abanye na mmepụta na-enweghị Vasya na-ekwu na ọ na-enye ya ohere, wdg - ihe efu niile a na-abanye n'ụzọ nke onye na-eme ihe. N'ihi na ọ bụrụ na e nwere ụfọdụ ọrụ metụtara ụtụ isi, mgbe ahụ, ihe niile na-abawanye 100 ugboro. Ya mere, mgbanwe ahụ agaghị enwekarị obi ụtọ site n'aka onye ọ bụla. N'ihi na àgwà ndị mmadụ na-esi ike ịgbanwe.

Mgbe mmadụ na-arụ ọrụ ọ na-emebu, ọ fọrọ nke nta ka ọ bụrụ n'echeghị echiche. Ibu ọgụgụ isi ya bụ efu. Naanị ya na ya na-egwuri egwu, o nweelarị akwụkwọ ndenye n'isi ya, o meela ya otu puku ugboro. Na ozugbo ị bịara gwa ya: "Ka anyị kagbuo omume a wee webata nke ọhụrụ malite na Mọnde," maka ya ọ na-aghọ ibu ọgụgụ isi dị ike. Ọ na-abịakwute onye ọ bụla ozugbo.

Ya mere, ihe kachasị mfe, ọ bụ ezie na ọ bụghị onye ọ bụla nwere ike imeli okomoko a, ma nke a bụ ihe m na-eme mgbe niile, nke a bụ ihe ndị a. Ọ bụrụ na ọrụ ọhụrụ amalite, mgbe ahụ na-emekarị omume niile a na-anwaleghị ozugbo na ọrụ a. Ọ bụ ezie na ọrụ ahụ dị obere, anyị anaghị etinye ihe ọ bụla n'ihe ize ndụ. Enweghị Prod ma, ọ dịghị ihe ga-ebibi. Ya mere, enwere ike iji ya dị ka ọzụzụ. Usoro a na-arụ ọrụ. Mana ọ bụghị ụlọ ọrụ niile nwere ohere ịmalite ọrụ ndị dị otú ahụ mgbe mgbe. Ọ bụ ezie na nke a dịkwa ntakịrị iju, n'ihi na ugbu a enwere mgbanwe dijitalụ zuru oke, onye ọ bụla ga-ebido nnwale iji nọgide na-eso ndị asọmpi.

N'ebe a, ị bịara na nkwubi okwu na ị ga-ebu ụzọ nwee nghọta nke ihe ị ga-eme. Ụwa adịghị mma, na prod adịghịkwa mma.

Ee, ihe ndị a jikọtara ọnụ.

Azụmahịa anaghị aghọtakwa mgbe niile na ha kwesịrị ịga otu a.

Enwere ọnọdụ nke enweghị mgbanwe ọ bụla ga-ekwe omume. Nke a bụ ọnọdụ ebe enwere nrụgide karịa na otu. Ndị otu a agbachaala ọkụ. O nweghị oge ohere maka nnwale ọ bụla. Ha na-arụ ọrụ na atụmatụ site n'ụtụtụ ruo mgbede. Na njikwa ahụ nwere njirimara ole na ole. A na-achọkarị ọtụtụ ihe. N'ọnọdụ dị otú ahụ, ọ dịghị mgbanwe ọ bụla ga-ekwe omume. Enwere ike ịgwa ndị otu ahụ na echi anyị ga-eme otu ihe ahụ dị ka ụnyaahụ, naanị anyị kwesịrị ime ntakịrị ihe ndị ọzọ. N'echiche a, ọ nweghị mgbanwe na omume ọ bụla ga-ekwe omume. Nke a bụ a kpochapụwo ọnọdụ mgbe ọ dịghị oge nkọ anyụike, osisi mkpa ka e bee ala, n'ihi ya, ha bee ya na dull anyụike. Enweghị ndụmọdụ dị mfe ebe a.

(Dmitry) Aga m agụpụta nkọwapụta sitere na nkata ahụ: “Ma anyị chọrọ ọtụtụ mkpuchi ule na ọkwa dị iche iche. Ogologo oge ole ka ekenyere maka ule? Ọ dị ntakịrị ọnụ ma na-ewe oge buru ibu. "

(Oleg) Nke a bụ echiche na-ezighi ezi. Ekwesịrị inwe ule zuru oke maka inwe obi ike. Njikọ na-aga n'ihu abụghị ihe ebe 100% nke ule a na-ebu ụzọ mee ma naanị mgbe ahụ ị malitere itinye usoro a. Njikọ na-aga n'ihu na-ebelata ikike ọgụgụ isi gị n'ihi eziokwu ahụ bụ na mgbanwe ọ bụla ị na-ahụ anya na-apụta ìhè nke na ị ghọtara ma ọ ga-agbaji ihe ma ọ bụ na ọ gaghị, ọbụna na-enweghị ule. Ị nwere ike ịnwale nke a ngwa ngwa n'isi gị n'ihi na mgbanwe ndị ahụ dị ntakịrị. Ọbụlagodi na ị nwere naanị ndị nyocha akwụkwọ, ọ dịrị ha mfe. Ị kpọpụrụ wee sị: "Lee, ọ nwere ihe gbajiri agbaji?" Ha nyochara wee sị, "Ee e, ọ nweghị ihe agbajiri agbaji." N'ihi na onye nnwale mara ebe ọ ga-ele anya. Ị nwere otu nkwa nke jikọtara ya na otu mpempe koodu. Na nke a na-erigbu site kpọmkwem omume.

N'ebe a, ị na-achọ mma.

(Dmitry) Ekwetaghị m ebe a. Enwere omume - mmepe na-anwale ule, nke ga-azọpụta gị na nke a.

(Oleg) Ọ dị mma, erubeghị m ebe ahụ. Echiche mbụ bụ na ị ga-ede 100% nke ule ma ọ bụ na ịchọghị ịme Mgbakwunye na-aga n'ihu ma ọlị. Ọ bụghị eziokwu. Ndị a bụ omume abụọ yiri ibe ha. Ha adabereghịkwa ozugbo. Mkpuchi ule gị ga-adị mma. Nke kacha mma - nke a pụtara na gị onwe gị nwere obi ike na ogo nna ukwu nke nna gị ukwu nọrọ mgbe emechara ya na-enye gị ohere iji obi ike pịa bọtịnụ “Tinye” na mgbede Fraịde na-egbu mmanya. Kedu ka ị ga-esi nweta nke a? Site na nyocha, site na mkpuchi, site na nlekota nke ọma.

Nleba anya dị mma enweghị ike ịpụ iche na ule. Ọ bụrụ na ị na-agba ọsọ ule otu ugboro na pre prod, mgbe ahụ ha na-elele edemede onye ọrụ gị niile otu ugboro na ọ bụ ya. Ma ọ bụrụ na ị na-agba ọsọ ha na akaghị agwụ agwụ, mgbe ahụ, nke a bụ usoro nlekota oru gị, nke na-anwale ihe niile - ma ọ dara ma ọ bụ na ọ bụghị. N'okwu a, naanị ihe dị iche bụ ma a na-eme ya otu ugboro ma ọ bụ ugboro abụọ. Nnwale dị oke mma ... na-agba ọsọ na-adịghị agwụ agwụ, nke a bụ nlekota oru. Na nleba anya kwesịrị ekwesị kwesịrị ịdị ka nke a.

Ya mere, otu ị ga-esi nweta steeti a mgbe ị jikere na mgbede Fraịde wee laa n'ụlọ bụ ajụjụ ọzọ. Eleghị anya ị bụ naanị onye nzuzu.

Ka anyị laghachi azụ ntakịrị na njikọta na-aga n'ihu. Anyị gbapụrụ n'ime omume mgbagwoju anya dịtụ iche.

Na nrọ nke abụọ bụ na MVP, ha na-ekwu, kwesịrị ime ngwa ngwa, n'ihi ya, ọ dịghị mkpa nyocha ebe ahụ ma ọlị. Ọ bụghị n'ezie n'ụzọ ahụ. Nke bụ eziokwu bụ na mgbe ị na-ede akụkọ onye ọrụ na MVP, ị nwere ike ịmepụta ya na bọọlụ, ya bụ, ị nụrụ na e nwere ụdị akụkọ onye ọrụ wee gbaa ọsọ ozugbo iji koodu ya, ma ọ bụ ị nwere ike ịrụ ọrụ site na iji TDD. Na dị ka TDD, dị ka omume na-egosi, ọ dịghị ewe ogologo oge, ya bụ, ule bụ mmetụta dị n'akụkụ. Omume TDD abụghị maka nnwale. N'agbanyeghị ihe a na-akpọ Test Driven Development, ọ bụghị maka ule ma ọlị. Nke a bụkwa usoro ụkpụrụ ụlọ. Nke a bụ ụzọ iji dee kpọmkwem ihe achọrọ na ọ bụghị ide ihe na-adịghị mkpa. Nke a bụ omume nke ilekwasị anya n'ichepụta echiche gị na-esote n'ihe gbasara ịmepụta ụlọ ọrụ ngwa.

Ya mere, ọ naghị adị mfe iwepụ echiche efu ndị a. MVP na ule anaghị emegiderịta onwe ha. Ọbụna, kama, n'ụzọ megidere nke ahụ, ọ bụrụ na ị na-eme MVP site na iji omume TDD, mgbe ahụ, ị ​​​​ga-eme ya nke ọma na ngwa ngwa karịa ma ọ bụrụ na ị na-eme ya n'emeghị ihe ọ bụla, ma na bọl.

Nke a bụ echiche na-abụghị nke doro anya na mgbagwoju anya. Mgbe ị nụrụ na ugbu a, m ga-ede ọtụtụ ule na n'otu oge ahụ m ga-eme ihe ngwa ngwa, ọ na-ada nnọọ ezughi oke.

(Dmitry) Ọtụtụ ndị nọ ebe a, mgbe ha na-akpọ MVP, ndị mmadụ na-adị umengwụ ide ihe nkịtị. Ma ihe ndị a ka dị iche iche. Ọ dịghị mkpa ịtụgharị MVP n'ime ihe ọjọọ ụfọdụ na-adịghị arụ ọrụ.

Ee, ee, ị kwuru eziokwu.

Na mberede MVP na prod.

Ruo mgbe ebighị ebi.

Na TDD na-ada ụda nke ukwuu mgbe ị nụrụ na ị na-ede ule ma yie ka ọ na-arụkwu ọrụ. Ọ na-ada nnọọ iju, ma n'ezie ọ na-atụgharị ngwa ngwa na mara mma otú a. Mgbe ị na-ede ule, ị na-eche ọtụtụ ihe n'isi gị banyere koodu a ga-akpọ na otu, yana àgwà anyị na-atụ anya ya. Ị bụghị naanị na m dere ụfọdụ ọrụ na ọ na-eme ihe. Na mbụ ị chere na o nwere ọnọdụ ndị dị otú ahụ, a ga-akpọkwa ya n'ụzọ dị otú a. Ị na-ekpuchi nke a na ule na site na nke a ị na-aghọta otú gị interfaces ga-ele anya n'ime gị koodu. Nke a nwere mmetụta dị ukwuu na ụkpụrụ ụlọ. Koodu gị na-aghọ modular na-akpaghị aka, n'ihi na ị ga-ebu ụzọ ghọta ka ị ga-esi nwalee ya, wee dee ya.

Ihe mere m na TDD bụ na n'oge ụfọdụ m goro onye nkuzi Ruby mgbe m ka bụ onye mmemme Ruby. O wee sị: "Ka anyị mee ya dịka TDD siri dị." Echere m: "Dam, ugbu a, m ga-ede ihe ọzọ." Anyị kwenyere na n'ime izu abụọ, m ga-eji TDD dee koodu ọrụ niile na Python. Mgbe izu abụọ gachara, achọpụtara m na achọghị m ịlaghachi. Mgbe izu abụọ nke ịgbalị itinye nke a n'ebe niile, ị ghọtara na ọ dịlarị gị mfe ọbụna iche echiche. Mana nke a abụghị ihe doro anya, yabụ ana m akwado onye ọ bụla na ọ bụrụ na ị nwere mmetụta na TDD siri ike, na-ewe oge na enweghị isi, gbalịa ịrapara na ya naanị izu abụọ. Abụọ ezuru m.

(Dmitry) Anyị nwere ike ịgbasa echiche a site n'echiche nke ọrụ akụrụngwa. Tupu anyị malite ihe ọhụrụ ọ bụla, anyị na-eme nlekota na mgbe malite. N'okwu a, nlekota na-aghọ ule nkịtị maka anyị. Na enwere mmepe site na nlekota oru. Ma ihe fọrọ nke nta ka ọ bụrụ onye ọ bụla na-ekwu na ọ dị ogologo, adị m umengwụ, emere m akwụkwọ mpịakọta nwa oge. Ọ bụrụ na anyị emeela nlekota oru nkịtị, anyị ghọtara ọnọdụ nke usoro CI. Na usoro CI nwere ọtụtụ nlekota. Anyị ghọtara ọnọdụ nke usoro ahụ, anyị ghọtara ihe dị n'ime ya. Na n'oge mmepe, anyị na-eme naanị usoro ahụ ka o wee ruo ọnọdụ achọrọ.

Amara omume ndị a kemgbe ogologo oge. Anyị tụlere nke a ihe dịka afọ anọ gara aga. Ma n'ime afọ 4, ọ dịghị ihe gbanwere.

Mana na ndetu a, m na-atụ aro ka a kwụsị mkparịta ụka gọọmentị.

Vidiyo (tinyere dị ka ihe mgbasa ozi, mana maka ihe ụfọdụ anaghị arụ ọrụ):

https://youtu.be/zZ3qXVN3Oic

isi: www.habr.com

Zụta nnabata ntụkwasị obi maka saịtị nwere nchekwa DDoS, sava VPS VDS 🔥 Zụta ebe nrụọrụ weebụ a pụrụ ịtụkwasị obi na nchekwa DDoS, sava VPS VDS | ProHoster