Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Ngatikurukurei kuti sei maturusi eCI uye CI zvinhu zvakasiyana zvachose.

Ndeapi marwadzo ayo CI akada kugadzirisa, pfungwa yacho yakabva kupi, ndezvipi zvisimbiso zvekupedzisira kuti zvinoshanda, sei kunzwisisa kuti une tsika uye kwete kungoisa Jenkins.

Pfungwa yekuita mushumo nezve Kuenderera mberi Kubatanidzwa yakaonekwa gore rapfuura, pandakanga ndichienda kubvunzurudzo uye kutsvaga basa. Ndakataura nemakambani e10-15, mumwe chete wavo akakwanisa kupindura zvakajeka kuti CI chii uye kutsanangura kuti vakaona sei kuti vakanga vasina. Vamwe vose vaitaura zvisinganzwisisike zvisina maturo pamusoro peJenkins :) Zvakanaka, tine Jenkins, inovaka, CI! Munguva yemushumo, ndichaedza kutsanangura kuti Continuous Integration chii chaizvo uye nei Jenkins nemamwe maturusi akafanana ane hukama husina kusimba neizvi.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Saka, chii chinowanzouya mupfungwa paunonzwa izwi reCI? Vanhu vazhinji vachafunga nezvaJenkins, Gitlab CI, Travis, nezvimwe.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Kunyangwe tikaita google, ichatipa maturusi aya.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Kana iwe uchijaira kubvunza, ipapo nekukurumidza mushure mekunyora maturusi, ivo vanokuudza kuti CI ndipo paunovaka uye nekumhanyisa bvunzo muPull Chikumbiro chekuzvipira.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Kuenderera mberi Kubatanidzwa hakusi nezvezvishandiso, kwete zvemagungano ane bvunzo mubazi! Kuenderera mberi Kubatanidzwa itsika yekunyanya kubatanidzwa kwekodhi nyowani uye kuti uishandise hazvina kutombodikanwa kuteya Jenkins, GitLab, nezvimwe.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Tisati tafunga kuti CI yakazara yakaita sei, ngatitangei kunyura mukati memamiriro ezvinhu evanhu vakauya nayo uye tinzwe kurwadziwa kwavanenge vachiedza kugadzirisa.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Uye vakapedza marwadzo ekushanda pamwe chete seboka!

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Ngatitarisei mienzaniso yezvinetso zvinosangana nevagadziri pavanenge vachikura muzvikwata. Pano isu tine chirongwa, tenzi bazi mu git uye vaviri vanogadzira.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Uye vakaenda kubasa semunhu aive ajaira. Takatora basa muchirongwa chikuru chezvinhu, takagadzira bazi remhando, uye takanyora kodhi.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Mumwe akapedza chimiro nekukurumidza uye akachibatanidza muna tenzi.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Yechipiri yaida nguva yakawanda, yakabatana gare gare uye yakaguma nekunetsana. Zvino, pachinzvimbo chekunyora izvo zvinodiwa nebhizinesi, mugadziri anoshandisa nguva yake nesimba kugadzirisa kusawirirana.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Izvo zvakanyanya kuoma kusanganisa yako chimiro neyakajairwa tenzi, iyo yakawanda nguva yatinopedza pairi. Uye ndakaratidza izvi nemuenzaniso wakapfava. Uyu ndiwo muenzaniso apo kunongova nevagadziri 2. Fungidzira kana 10 kana 15 kana 100 vanhu mukambani vakanyorera kune imwe repository. Unozopenga kugadzirisa kusawirirana kwese uku.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Pane nyaya yakasiyana zvishoma. Tine tenzi uye vamwe vanogadzira vanoita chimwe chinhu.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Vakagadzira davi.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Mumwe akafa, zvinhu zvose zvakanga zvakanaka, akapasa basa racho.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Mugadziri wechipiri, panguva iyi, akapa basa rake. Ngatitii akaitumira kuti iongororwe. Makambani mazhinji ane tsika inonzi review. Kune rumwe rutivi, tsika iyi yakanaka uye inobatsira, kune rumwe rutivi, inotinonotsa munzira dzakawanda. Hatisi kuzopinda mune izvo, asi heino muenzaniso wakanaka weiyo yakaipa wongororo nyaya inogona kutungamirira kune. Waendesa chikumbiro chekudhonza kuti chiongororwe. Hapasisina chimwe chekuti mugadziri aite. Anotanga kuitei? Anotanga kuita mamwe mabasa.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Munguva iyi, mugadziri wechipiri akaita chimwe chinhu.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Wokutanga akapedza basa rechitatu.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Uye mushure menguva refu, ongororo yake yakaedzwa, uye ari kuyedza kubvumirana. Saka chii chiri kuitika? Inobata nhamba huru yemakakatanwa. Sei? Nokuti apo chikumbiro chake chekudhonza chakanga chakarembera mukuongorora, zvinhu zvakawanda zvakanga zvatochinja mukodhi.

Pamusoro penyaya ine makakatanwa, pane nyaya ine kutaurirana. Nepo tambo yako ichirembera pakuongorora, ichimirira chimwe chinhu, iwe uchishanda pane chimwe chinhu kwenguva yakareba, unomira kuronda kuti chii chimwe chiri kuchinja munheyo yekodhi yebasa rako. Zvichida zvauri kuedza kugadzirisa izvozvi zvakatogadziriswa nezuro uye unogona kutora imwe nzira woishandisa zvakare. Asi hausi kuzozviona nekuti unogara uchishanda nebazi rekare. Uye bazi iri rekare rinogara richikonzera kuti iwe ugadzirise kusawirirana.

Zvinoitika kuti kana tikashanda sechikwata, kureva kuti, hapana munhu mumwe chete ari kutenderera munzvimbo inochengeterwa, asi vanhu 5-10, saka kana tisingawedzere kodhi yedu kuna tenzi, ndipo patinonyanya kutambura nekuti isu pakupedzisira tinoda. chimwe chinhu zvino chibatanidza. Uye kunyanya kusawirirana kwatinako, uye vhezheni yekare yatinoshanda nayo, tinowedzera matambudziko.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Kuita chimwe chinhu pamwe chete kunorwadza! Tinogara tichipindirana munzira.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Dambudziko iri rakaonekwa makore anopfuura 20 apfuura. Ndakawana kutaurwa kwekutanga kwechiito cheKuenderera mberi Kubatanidzwa muKunyanya Kuronga.

Yakanyanyisa Programming ndiyo yekutanga agile framework. Peji yacho yakaonekwa muna 96. Uye iyo pfungwa yaive yekushandisa imwe mhando yemaitiro ehurongwa, kuronga uye zvimwe zvinhu, kuitira kuti kusimudzira kuve kuchinjika sezvinobvira, kuitira kuti tigone kukurumidza kupindura chero shanduko kana zvinodiwa kubva kune vatengi vedu. Uye vakatanga kutarisana neizvi makore makumi maviri nemana apfuura, kuti kana ukaita chimwe chinhu kwenguva yakareba kwazvo uye padivi, saka unopedza nguva yakawanda pazviri nekuti une makakatanwa.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Iye zvino tichaongorora mutsara wekuti "Kuramba Kubatanidzwa" mumwe nemumwe. Kana tikaturikira zvakananga, tinowana kubatanidza kunoenderera. Asi kuti kuenderera mberi sei hakuna kunyatsojeka; kunoramba kuripo. Asi kuti kubatanidzwa kwakawanda sei hakunawo pachena.

Uye ndosaka ndiri kukupa makotesheni kubva kuExtreme Programming izvozvi. Uye isu tichaongorora mazwi ese ari maviri zvakasiyana.

Kubatanidzwa - Sezvandambotaura, tinoedza kuona kuti injiniya yega yega inoshanda neshanduro yemazuva ano yekodhi, kuitira kuti anoedza kuwedzera kodhi yake kakawanda sezvinobvira kune rimwe bazi, kuitira kuti aya matavi maduku. Nekuti kana iwo akakura, saka isu tinogona kunamatira nyore nekusanganisa kupokana kwevhiki. Izvi zvinonyanya kuitika kana tiine kutenderera kwakareba senge mapopoma, uko mugadziri akaenda kwemwedzi kunotema chimwe chinhu chikuru. Uye achange akanamatira padanho rekubatanidza kwenguva yakareba.

Kubatanidza ndipo patinotora bazi redu toribatanidza natenzi, tinoribatanidza. Pane sarudzo yekupedzisira kana isu tiri transbase kuvandudza, kwatinoyedza kuona kuti isu tinongonyorera kuna tenzi pasina mamwe mapazi ekuwedzera.

Kazhinji, kubatanidzwa kunoreva kutora kodhi yako uye kuikwevera mukati me tenzi.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Chii chinorehwa pano neshoko rokuti β€œkuenderera mberi”, kunonzi kuenderera mberi? Kudzidzira kunoreva kuti mugadziri anoyedza kubatanidza kodhi yake nekukurumidza sezvinobvira. Ichi ndicho chinangwa chake paanenge achiita chero basa - kuti awane kodhi yake mutenzi nekukurumidza sezvinobvira. Munyika yakanaka, vanogadzira vaizoita izvi maawa mashoma. Ndiko kuti, iwe unotora dambudziko diki woribatanidza muna tenzi. Zvese zvakanaka. Izvi ndizvo zvaunovavarira. Uye izvi zvinofanira kuitwa nguva dzose. Ukangoita chimwe chinhu, unobva wachiisa muna tenzi.

Uye mugadziri anogadzira chimwe chinhu ane mhosva pane zvaakaita kuti chishande uye kwete kutyora chero chinhu. Apa ndipo panowanzobuda nyaya yebvunzo. Tinoda kumhanyisa mimwe miedzo pakuzvipira kwedu, pakubatanidza kwedu, kuti tive nechokwadi chekuti inoshanda. Uye apa ndipo Jenkins anogona kukubatsira.

Asi nenyaya: ngatiite shanduko diki, ngatiregei mabasa ave madiki, ngatiite dambudziko uye nekukurumidza edza kuiisa mune tenzi - hapana Jenkins achabatsira pano. Nekuti Jenkins anongokubatsira iwe kumhanya bvunzo.

Unogona kuita pasina ivo. Izvi hazvizokurwadzi zvachose. Nokuti chinangwa chekudzidzira ndechekuyera kakawanda sezvinobvira, kuitira kuti usaparadza nguva yakawanda pane chero kusawirirana mune ramangwana.

Ngatimbofungidzira kuti nechikonzero chimwe tiri muna 2020 tisina Internet. Uye tinoshanda munharaunda. Isu hatina Jenkins. Izvi zvakanaka. Unogona kuenderera mberi nekugadzira bazi renzvimbo. Iwe wakanyora imwe kodhi mairi. Takapedza basa racho mumaawa 3-4. Takachinjira kuita master, takaita git pull, ndokubatanidza bazi redu ipapo. Ready. Kana iwe ukaita izvi kazhinji, makorokoto, une Continuous Integration!

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Ndehupi humbowo munyika yanhasi huripo kuti zvakakodzera kushandisa simba pairi? Nokuti kazhinji zvakaoma. Kana iwe ukaedza kushanda seizvi, iwe unonzwisisa kuti kumwe kuronga kwave kukanganiswa, iwe uchafanirwa kupa nguva yakawanda yekuora mabasa. Nokuti kana iwe ukaita murume ..., saka iwe haungakwanisi kusvika pakugadzirisa nokukurumidza uye, maererano naizvozvo, uchapinda mumatambudziko. Unenge usisina kudzidzira.

Uye ichadhura. Hazvizogoneke kushanda nekukurumidza kubva mangwana uchishandisa Continuous Integration. Zvinokutorerai mese nguva yakareba kuti mujaire, zvinokutorerai nguva yakareba kuti mujaire mabasa ekuora, zvinotora nguva yakareba kwazvo kuti mujaire kuitazve kudzokorora tsika, kana uine imwe. . Nekuti chinangwa chedu ndechekuti inyunguduke nhasi. Uye kana iwe ukaita wongororo mukati memazuva matatu, saka une matambudziko uye Kuenderera Kubatanidzwa hakusi kukushandira iwe.

Asi isu tine humbowo hwakakodzera izvozvi hunotiudza kuti kuisa mari mune iyi tsika inonzwisisika?

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Chinhu chekutanga chakauya mupfungwa dzangu yaive State of DevOps. Iyi iongororo yave ichiitwa nevakomana kwemakore manomwe. Iye zvino vanozviita sesangano rakazvimirira, asi pasi peGoogle.

Uye ongororo yavo ye2018 yakaratidza kuwirirana pakati pemakambani anoedza kushandisa matavi enguva pfupi anobatanidza nekukurumidza, anobatanidza kazhinji, uye ane zvirinani IT performance zviratidzo.

Ndezvipi zviratidzo izvi? Aya ndiwo 4 metrics avanotora kubva kumakambani ese mumibvunzo yavo: deployment frequency, lead time yekuchinja, nguva yekudzorera sevhisi, shanduko yekutadza mwero.

Uye, chekutanga, pane kuwirirana uku, tinoziva kuti makambani anoyera kazhinji ane mametric ari nani. Uye vane kupatsanurwa kwemakambani mumapoka akati wandei: aya makambani anononoka anogadzira chimwe chinhu zvishoma nezvishoma, mutambi wepakati, mutambi wepamusoro uye wepamusoro. Vakuru veNetflix, Amazon, inokurumidza kukurumidza, ita zvese nekukurumidza, zvakanaka uye nemazvo.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Nyaya yechipiri, yakaitika mwedzi wapfuura. Technology Radar ine chinyorwa chikuru nezve Gitflow. Gitflow yakasiyana nedzimwe dzose pakuti matavi ayo anogara kwenguva refu. Kune matavi ekusunungura anogara kwenguva yakareba, uye ane matavi anogara kwenguva refu. Iyi tsika paTechnology Radar yatamira kune HOLD. Sei? Nokuti vanhu vanotarisana nemarwadzo ekubatanidzwa.

Kana bazi rako richirarama kwenguva yakareba, rinomira, roora, uye tinotanga kupedza nguva yakawanda tichiedza kuita imwe shanduko kwairi.

Uye nguva pfupi yadarika munyori weGitflow akataura kuti kana chinangwa chako chiri Kuenderera mberi Kubatanidzwa, kana chinangwa chako chiri chekuti iwe unoda kuumburuka kakawanda sezvinobvira, saka Gitflow ipfungwa yakaipa. Akasiyana akawedzera kuchinyorwa kuti kana iwe uine backend kwaunogona kuyedza izvi, saka Gitflow haina kunaka kwauri, nekuti Gitflow ichakunonokera iwe, Gitflow ichagadzira matambudziko kwauri nekubatanidzwa.

Izvi hazvireve kuti Gitflow yakaipa uye haifanirwe kushandiswa. Ndezvedzimwe nguva. Semuenzaniso, kana iwe uchida kutsigira akati wandei mavhezheni esevhisi kana application, i.e. kwaunoda rutsigiro kwenguva yakareba.

Asi kana iwe ukataura nevanhu vanotsigira mabasa akadaro, iwe uchanzwa kurwadziwa kukuru pamusoro pekuti iyi shanduro yaiva 3.2, iyo yaiva mwedzi mina yapfuura, asi kugadzirisa uku kwakanga kusina kuiswa mairi uye ikozvino, kuitira kuti iite, unofanira kuchinja zvakawanda. Uye zvino vakamira zvakare, uye zvino vanga vachitamba kwevhiki vachiedza kuita chimwe chinhu chitsva.

Sezvakataurwa naAlexander Kovalev nemazvo mukutaura, kuwirirana hakuna kufanana nekukonzeresa. Ichi ichokwadi. Ndokureva kuti, hapana chakananga chinongedzo chekuti kana iwe uine Kuenderera Kubatanidzwa, saka ese metrics achave akanaka. Asi pane hukama hwakanaka hwekuti kana mumwe ari mumwe, saka zvingangoita mumwe wacho zvakare. Kwete chokwadi, asi kazhinji. Kungori kuwirirana.

Kuenderera mberi Kubatanidzwa setsika, kwete Jenkins. Andrey Alexandrov

Zvinoita sekuti isu tave kutoita chimwe chinhu, zvinoita sekunge tave kutobatanidza, asi tinganzwisisa sei kuti tichine Kubatana Kwekuenderera, kuti isu tiri kubatanidza kazhinji?

Jez Humble ndiye munyori weHandbook, Accelerate, the Continuous Delivery webhusaiti, uye bhuku Rinoenderera Kuendeswa. Anopa bvunzo iyi:

  • Kodhi yeinjiniya inosvika kuna tenzi mazuva ese.
  • Pakuita kwese iwe unomhanyisa mayunitsi bvunzo.
  • Iyo kuvaka muna tenzi yakadonha, yakagadziriswa mukati memaminitsi gumi.

Anokurudzira kushandisa bvunzo seizvi kuti ave nechokwadi chekuti une maitiro akakwana.

Ndinoona zvekupedzisira zvine nharo zvishoma. Ndiko kuti, kana iwe ukakwanisa kuzvigadzirisa mumaminitsi e10, saka une Kuenderera Kubatanidza, zvinonzwika zvishoma zvisinganzwisisiki, mumaonero angu, asi zvine musoro. Sei? Nekuti kana ukaomesa chando kazhinji, zvinoreva kuti shanduko dzako idiki. Kana shanduko shoma inoreva kuti tenzi wako kuvaka kwakaputsika, saka unogona kuwana muenzaniso nekukurumidza nekuti shanduko idiki. Pano iwe waive nediki kubatanidza, 20-30 mitsetse mairi yakachinja. Uye, maererano, iwe unogona kukurumidza kunzwisisa kuti chikonzero chii, nekuti shanduko idiki, une nzvimbo diki kwazvo yekutsvaga dambudziko.

Uye kunyangwe kana prod yedu ikadonha mushure mekuburitswa, saka kana isu tine tsika yeKuenderera Kubatanidzwa, zviri nyore kwatiri kuita, nekuti shanduko idiki. Hongu, izvi zvichakanganisa kuronga. Izvi zvicharwadza. Uye, zvichida, chinhu chakanyanya kuoma mukuita uku ndiko kujaira kuputsa mabasa, ndiko kuti, kuti ungazviita sei kuitira kuti iwe utore chimwe chinhu uye uchiite mumaawa mashomanana uye panguva imwe chete upfuure kuongorora, kana une imwe. Ongororo marwadzo akasiyana.

Yuniti bvunzo ingori mubatsiri anokubatsira kuti unzwisise kana kubatanidzwa kwako kwakabudirira uye kuti hapana chakatyoka. Mukuona kwangu, izvi zvakare hazvisi zvachose zvinosungirwa, nokuti iyi haisi iyo pfungwa yekudzidzira.

Iyi ishumo pfupi yeKuenderera mberi Kubatanidzwa. Ndizvo chete zviripo pakuita uku. Ndakagadzirira mibvunzo.

Ndichangopfupisa zvakare muchidimbu:

  • Kuenderera mberi Kubatanidzwa hakusi Jenkins, haisi Gitlab.
  • Ichi hachisi chishandiso, itsika yekuti isu tinobatanidza kodhi yedu mune tenzi kakawanda sezvinobvira.
  • Isu tinoita izvi kuitira kuti tidzivise kurwadziwa kukuru kunomuka nekubatanidzwa mune ramangwana, ndiko kuti, isu tinonzwa kurwadziwa zvishoma ikozvino kuti tisazonzwa zvakawanda mune ramangwana. Ndiyo pfungwa yose.
  • Padivi pane kutaurirana kuburikidza nekodhi, asi ini handiwanzo kuona izvi, asi izvi zvakare ndizvo zvayakagadzirirwa.

Mibvunzo yako

Chii chekuita nemabasa asina kuora?

Kuora. Dambudziko nderei? Unogona here kupa muenzaniso kuti pane basa uye harina kuora?

Kune mabasa asingagoni kuderedzwa kubva pashoko rekuti "zvakakwana", semuenzaniso, ayo anoda hunyanzvi hwakadzama uye anogona kunyatsogadziriswa mukati memwedzi kuti awane imwe mhedzisiro inogayiwa.

Kana ndikakunzwisisa nenzira yakarurama, saka pane rimwe basa guru uye rakaoma, mhedzisiro yacho ichaonekwa chete mumwedzi?

Hongu ndizvozvo. Hongu, zvichave zvichigoneka kuongorora mhedzisiro kwete pamberi pemwedzi.

Fine. Kazhinji izvi hazvisi dambudziko. Sei? Nekuti muchiitiko ichi, kana tichitaura nezvematavi, hatisi kutaura nezvedavi rine chimiro. Zvimiro zvinogona kuva zvakakura uye zvakaoma. Vanogona kukanganisa nhamba huru yezvikamu. Uye pamwe hatikwanise kuzviita zvizere mubazi rimwe. Izvi zvakanaka. Tinongoda kuparura nyaya iyi pasi. Kana chimiro chisina kunyatso gadzirira, izvi hazvireve kuti zvimwe zvidimbu zvekodhi yayo hazvigone kubatanidzwa. Iwe wakawedzera, toti, kutama uye kune mamwe matanho mukati mechikamu. Ngatiti iwe une nhanho - ita kutama, wedzera nzira itsva. Uye iwe unogona kutoyera zvinhu izvi mazuva ese.

Fine. Chii chinobatsira ipapo?

Ko kuuraya zvinhu zvidiki zuva nezuva zvine basa rei?

Hongu.

Kana vakaputsa chimwe chinhu, unozviona pakarepo. Iwe une chidimbu chidiki chakatsemuka chimwe chinhu, zviri nyore kwauri kuti ugadzirise. Pfungwa ndeyokuti kubatanidza chidimbu chiduku ikozvino chiri nyore zvikuru pane kubatanidza chimwe chinhu chikuru mumavhiki mashomanana. Uye pfungwa yechitatu ndeyokuti mamwe mainjiniya achashanda neshanduro yazvino yekodhi. Vachaona kuti kumwe kutama kwawedzerwa pano, uyezve imwe nzira yaonekwa yavangangoda kushandisa. Wese munhu achaona zviri kuitika mukodhi yako. Zviri nokuda kwezvinhu zvitatu izvi zvinodzidzira zvinoitwa.

Ndatenda, nyaya yakavharwa!

(Oleg Soroka) Ndingawedzera here? Wataura zvese nemazvo, ini ndinongoda kuwedzera mutsara mumwe chete.

Saka.

Nekuenderera Kubatanidzwa, iyo kodhi inobatanidzwa mubazi rakajairika kwete kana chimiro chave chagadzirira, asi kana chivakwa chamira kupaza. Uye iwe unogona kuzvipira zvakachengeteka kuita tenzi kakawanda pazuva sezvaunoda. Chechipiri chechipiri ndechekuti kana nekuda kwechimwe chikonzero iwe usingakwanise kutyora basa repamwedzi kuita mabasa kweanenge mazuva matatu, ini ndakanyarara kwemaawa matatu, saka une dambudziko rakakura. Uye chokwadi chekuti iwe hauna Kuenderera mberi Kubatanidzwa ndiyo idiki yematambudziko aya. Izvi zvinoreva kuti une matambudziko nekuvaka uye zero mainjiniya maitiro. Nokuti kunyange kana iyi iri tsvakurudzo, saka chero ipi zvayo inofanira kuumbwa nenzira yekufungidzira kana kutenderera.

Takataura nezve 4 metrics inosiyanisa makambani akabudirira kubva kune anononoka. Tichiri kufanira kurarama kuti tione aya mana metrics. Kana basa rako repakati richitora mwedzi kuti upedze, saka ini ndaizotarisa pane iyi metric kutanga. Ndaizodzikisira kusvika 4 days first. Ndakabva ndatanga kufunga nezvaContinuous.

Ndakakunzwisisa here kuti iwe unofunga kuti kazhinji hapana chikonzero chekudyara muinjiniya maitiro kana chero basa rinotora mwedzi kuti ripere?

Iwe une Continuous Integration. Uye kune musoro wakadaro wekuti mumaminitsi gumi unogona kugadzirisa kugadzirisa kana kuidzosera kumashure. Fungidzira iwe wakaikungurutsa. Uyezve, iwe unotoenderera mberi nekutumirwa, iwe wakaitenderedza kuti ibude uye wobva waona kuti chimwe chinhu chakashata. Uye iwe unofanirwa kuidzosera kumashure, asi iwe watotamisa dhatabhesi yako. Iwe unotova ne database schema yeinotevera vhezheni, uyezve, iwe zvakare waive neimwe mhando yekuchengetedza, uye iyo data yakanyorwawo ipapo.

Uye ndeipi imwe nzira yaunayo? Kana iwe ukadzosera kumashure kodhi, saka haichakwanise kushanda neiyi dhatabhesi yakagadziridzwa.

Nheyo inongoenda mberi chete, hongu.

Vanhu vane hurombo huinjiniya maitiro vangangove vasina kuverenga bhuku gobvu nezve ... kana. Chii chekuita ne backup? Kana iwe ukadzoreredza kubva kune backup, zvinoreva kuti iwe unorasikirwa nedata rawakaunganidza panguva iyoyo. Semuenzaniso, takashanda kwemaawa matatu neshanduro itsva yedatabase, vashandisi vakanyoreswa ipapo. Iwe unoramba backup yekare nekuti chirongwa hachishande neshanduro nyowani, saka warasa vashandisi ava. Uye havagutsikani, vanopika.

Kuti uwane ruzivo rwakakwana rwemaitiro anotsigira Kuenderera mberi Kubatanidzwa uye Kuenderera Kunoenderera mberi, hazvina kukwana kungodzidza kunyora .... Chekutanga, panogona kunge paine akawanda acho, hazvizoite. Uyezve kune boka remamwe maitiro akaita seSainzi. Kune tsika yakadai, GitHub yakaikurudzira panguva imwe chete. Apa ndipo paunenge uine kodhi yekare uye kodhi nyowani inoshanda panguva imwe chete. Apa ndipo paunogadzira chimiro chisina kupera, asi chinogona kudzosera imwe kukosha: ingave sebasa kana seRest API. Iwe unoita zvese zviri zviviri kodhi nyowani uye yekare kodhi, uye enzanisa mutsauko pakati pavo. Uye kana paine mutsauko, saka iwe unonyora chiitiko ichi. Nenzira iyi unoziva kuti une chinhu chitsva chakagadzirira kubuda pamusoro pechinyakare kana usina mutsauko pakati pezviviri kwenguva yakati.

Kune mazana emaitiro akadaro. Ini ndinokurudzira kutanga ne transbase development. Haasi 100% paKubatanidza Kuenderera mberi, asi maitiro akafanana, mumwe haagoni kurarama zvakanaka pasina mumwe.

Iwe wakapa transbase kusimudzira semuenzaniso kwaunogona kuona maitiro kana iwe unokurudzira vanhu kuti vatange kushandisa transbase debelopment?

Tarisa, nekuti havazokwanisi kuishandisa. Kuti uzvishandise, unofanirwa kuverenga zvakanyanya. Uye kana munhu akabvunza: "Zvekuita nechinhu chinotora mwedzi, zvinoreva kuti haana kuverenga nezve transbase development." Ini handingazvikurudzire izvozvi. Ini ndinopa zano kuti nditarise chete pamusoro penyaya yekuti unganyatso kuputsa sei mabasa makuru kuita madiki. Ichi ndicho chirevo chekuora.

Kuparara ndechimwe chezvishandiso zvemugadziri. Tinotanga kuita ongororo, tozoora, tozobatanidza, tozobatanidza. Uye aya ndiwo mashandiro anoita zvinhu zvese kwatiri. Uye isu tichiri kuda kukura kusvika Kuenderera Kubatanidzwa kuburikidza nekuora. Mibvunzo inomuka padanho rekutanga, uye isu tave kutotaura nezvedanho rechina, i.e. kazhinji kacho patinobatanidza, zviri nani. Zvichiri kukurumidza kuita izvi; zvingava zvakanaka kutema monolith yako kutanga.

Iwe unofanirwa kudhirowa akati wandei emiseve uye masikweya pane imwe dhayagiramu. Iwe haugone kutaura kuti ikozvino ini ndicharatidza dhizaini yekuvaka yechishandiso chitsva uye kuratidza imwe sikweya, mukati mayo mune girini bhatani rekushandisa. Chero zvazvingava, pachava nemamwe masikweya nemiseve. Dhiyagiramu yese yandakaona yaipfuura imwe chete. Uye kuora, kunyangwe padanho rekumiririra graphical, kuri kutoitika. Naizvozvo, mativi anogona kuitwa akazvimirira. Kana zvisiri, saka ndine mibvunzo mikuru kune mugadziri.

Pane mubvunzo kubva pakutaura: "Kana wongororo ichisungirwa uye ichitora nguva yakareba, pamwe zuva kana kupfuura?"

Une matambudziko nekudzidzira. Ongororo haifanire kugara zuva kana kupfuura. Iyi inyaya imwe chete kumubvunzo wapfuura, yakapfava zvishoma. Kana ongororo ikaenderera kwezuva, saka kazhinji ongororo iyi iri kuitika pane imwe shanduko huru. Izvi zvinoreva kuti inoda kuitwa diki. Mukusimudzira transbase, iyo Oleg akakurudzira, pane nyaya inonzi inoenderera ongororo. Pfungwa yake ndeyekuti tinoita chikumbiro chidiki chekudhonza nemaune, nekuti tinoyedza kusanganisa nguva dzose uye zvishoma panguva. Uye saka chikumbiro chekudhonza chinoshandura imwe yekubvisa kana mitsara gumi. Nekuda kwekuongorora uku, zvinotitorera maminetsi mashoma.

Kana kuongorora kukatora zuva kana kupfuura, chimwe chinhu chakaipa. Chekutanga, iwe unogona kunge uine mamwe matambudziko neiyo architecture. Kana ichi chikamu chikuru chekodhi, mitsara 1, semuenzaniso. Kana kuti mavakirwo ako akaoma kunzwisisa zvokuti munhu haakwanisi kuzvinzwisisa. Iri idambudziko repadivi zvishoma, asi rinotofanira kugadziriswa. Zvichida hapana chikonzero chekudzokorora zvachose. Tinofanira kufunga nezvazvo zvakare. Ongororo ndicho chinhu chinokunonotsa. Iine zvayakanakira zvayakanakira, asi iwe unofanirwa kunzwisisa kuti sei uri kuzviita. Iyi ndiyo nzira yekuti iwe nekukurumidza utaure ruzivo, iyi ndiyo nzira yekuti iwe uise mamwe maitiro mukati kana chii? Sei uchida izvi? Nekuti ongororo inoda kuitwa nekukurumidza kana kukanzurwa zvachose. Zvakafanana ne transbase deveploment - iyo nyaya yakanaka kwazvo, asi yevakomana vakura chete.

Nezve 4 metrics, ndichiri kukurudzira kuti ndibvise kuti unzwisise kuti izvi zvinotungamira chii. Tarisa nhamba, tarisa pamufananidzo, kuti zvinhu zvose zvakashata sei.

(Dmitry) Ndakagadzirira kupinda muhurukuro pamusoro peizvi newe. Nhamba uye metrics zvese zvakanaka, maitiro akanaka. Asi iwe unofanirwa kunzwisisa kana bhizinesi richirida. Kune mabhizinesi asingade iyo mhando yekumhanyisa shanduko. Ndinoziva makambani uko shanduko dzisingakwanisi kuitwa maminitsi gumi nemashanu. Uye kwete nekuti ivo vakaipa kwazvo. Uku kutenderera kwehupenyu kwakadai. Uye kuita kuti matavi aoneke, iyo yekushandura chimiro, unoda ruzivo rwakadzama.

Zvakaoma. Kana iwe uchida kuverenga iyo nyaya nezve toggle ficha mune zvakadzama, ini ndinoikurudzira zvikuru https://trunkbaseddevelopment.com/. Uye pane chinyorwa chinoshamisa chaMartin Fowler pamusoro pekushandura maitiro: ndeapi marudzi aripo, kutenderera kwehupenyu, nezvimwewo.

Uye hausati wapindura mubvunzo: "Jenkins inodiwa here kana kuti kwete?"

Jenkins haidiwi chero zvakadaro. Zvakanyanya hazvo, maturusi: Jenkins, Gitlab inounza iwe nyore. Uchaona kuti gungano raungana kana kuti harina kuunganidzwa. Vanogona kukubatsira, asi havakupi kudzidzira. Vanogona chete kukupa denderedzwa - Ok, kwete Ok. Uye zvino, kana iwe ukanyorawo miedzo, nokuti kana pasina miedzo, zvino inenge isina maturo. Naizvozvo, inodiwa nekuti iri nyore, asi kazhinji iwe unogona kurarama pasina iyo, haungarasikirwe zvakanyanya.

Kureva, kana uine maitiro, zvinoreva here kuti hauzvidi?

Izvo ndizvo. Ini ndinokurudzira iyo Jez Humble bvunzo. Ikoko ndine ambivalent maitiro kune yekupedzisira pfungwa. Asi kazhinji, kana uine zvinhu zvitatu, iwe unobatanidza nguva dzose, iwe unomhanyisa bvunzo pakuita muna tenzi, iwe unokurumidza kugadzirisa kuvaka muna tenzi, saka pamwe haudi chimwe chinhu.

Tichiri kumirira mibvunzo kubva kuvatori vechikamu, ndine mubvunzo. Isu taingotaura nezve kodhi yechigadzirwa. Wakamboshandisa iyo kodhi yezvivakwa? Ndiyo kodhi imwe chete here, ine misimboti yakafanana uye kutenderera kwehupenyu kwakafanana, kana kuti kune akasiyana mafambiro nemisimboti? Kazhinji, kana munhu wese achitaura nezve Kuenderera mberi Kubatanidzwa uye Kubudirira, munhu wese anokanganwa kuti kune zvakare kodhi yezvivakwa. Uye munguva pfupi yapfuura kwave nekuwedzera uye kuwanda kwayo. Uye mitemo iyi yose inofanira kuunzwa ikoko here?

Kwete kunyange izvo zvazvinofanira kuva, zvingave zvakanaka nekuti zvaizoita kuti hupenyu huve nyore nenzira imwechete. Patinongoshanda nekodhi, kwete ne bash zvinyorwa, asi isu tine yakajairika kodhi.

Mira, mira, bash script iri kodhi zvakare. Usabata mudiwa wangu wekare.

Okay, handisi kutsika ndangariro dzenyu. Ini handifarire bash. Inoputika zvakashata uye inotyisa nguva dzose. Uye kazhinji inoputsa zvisingatarisirwi, ndicho chikonzero ini ndisingazvifariri. Asi zvakanaka, toti une bash kodhi. Pamwe handisi kunyatsonzwisisa uye kune akajairwa maitiro ekuyedza kunze uko. Ini handisi mukuziva. Uye isu tinowana mabhenefiti akafanana.

Patinongoshanda nezvivakwa sekodhi, tinowana matambudziko ese akafanana nevagadziri. Mwedzi mishoma yapfuura, ndakasangana nemamiriro ezvinhu apo mumwe wandaishanda naye akanditumira chikumbiro chekudhonza mitsara ye1 mubash. Uye iwe unozorora pakuongorora kwe000 maawa. Zvinetso zvimwe chetezvo zvinomuka. Ichiri kodhi. Uye kuchiri kubatana. Isu tinonamira nechikumbiro chekudhonza uye tinobatikana nenyaya yekuti isu tiri kugadzirisa makakatanwa akafanana ekubatanidza mune imwechete bash, semuenzaniso.

Ini zvino ndiri kunyatso shingairira kutarisa chinhu ichi chose pane yakanakisa infra programming. Ini manje ndapinza Pulumi muzvivakwa. Uku ndiko kuronga mune yayo yakachena fomu. Ikoko kwakatonyanya kunaka, nekuti ini ndine zvese zvinogoneka zvemutauro wechirongwa, i.e. Ndakagadzira yakanaka kuchinjika kunze kwebhuruu nemafanana ifs uye zvese zvakanaka. Kureva kuti shanduko yangu yatova muna tenzi. Munhu wose anogona kutomuona. Mamwe mainjiniya anoziva nezvazvo. Zvakatopesvedzera chimwe chinhu ipapo. Nekudaro, haina kugoneswa kune zvese zvivakwa. Yakabatidza mabhenji angu ebvunzo, semuenzaniso. Naizvozvo, kuti upindure mubvunzo wako zvakare, zvakafanira. Zvinoita kuti hupenyu huve nyore kwatiri, semainjiniya anoshanda nekodhi, nenzira imwechete.

Kana mumwe munhu ane mibvunzo?

Ndine mubvunzo. Ndinoda kuenderera mberi nehurukuro naOleg. Kazhinji, ndinofunga kuti iwe wakarurama, kuti kana basa richitora mwedzi kuti upedze, iwe une dambudziko nekuvaka, une dambudziko nekuongorora, kuora, kuronga, nezvimwewo. Asi ndine manzwiro ekuti kana ukatanga kuyedza kurarama zvinoenderana neContinuous Integration, ipapo iwe uchatanga kururamisa marwadzo nekuronga, nekuti haungazobva pairi kumwe kumwe.

(Oleg) Hongu, ndizvozvo. Iyi tsika inofananidzwa mukuedza kune imwe tsika yakakomba yekuchinja tsika. Chinhu chakanyanya kuoma kukunda maitiro, kunyanya maitiro akaipa. Uye kana kuti uite tsika iyi, shanduko yakakomba mutsika dzeavo vakakukomberedza inodiwa: vagadziri, manejimendi, maneja wekugadzira, ipapo zvinoshamisa zvakakumirira.

Ndezvipi zvinoshamisa zvingavapo? Ngatiti iwe unosarudza kuti iwe uchabatanidza kakawanda. Uye iwe une zvimwe zvinhu zvakasungwa nekubatanidzwa, semuenzaniso, zvigadzirwa. Uye mukambani yako, semuenzaniso, pane mutemo wekuti chinhu chega chega chinofanirwa kuverengerwa neimwe nzira mune imwe mhando yeartifact yekuchengetedza system. Uye zvinotora nguva. Munhu anofanirwa kutarisa bhokisi iro iye, semaneja wekuburitsa, akaedza chigadzirwa ichi kuti ave nechokwadi chekuti chagadzirira kuburitswa mukugadzirwa. Kana zvichitora 5-10-15 maminitsi, asi iwe unoita marongerwo kamwe pavhiki, zvino kupedza hafu yeawa kamwe pavhiki mutero muduku.

Kana iwe ukaita Continuous Integration ka10 pazuva, saka ka10 inoda kuwanzwa nemaminitsi makumi matatu. Uye izvi zvinodarika huwandu hwenguva yekushanda yeuyu maneja wekuburitsa. Anongoneta nekuzviita. Pane mari yakatarwa yemamwe maitiro. Ndizvo zvose.

Uye iwe unofanirwa kudzima mutemo uyu kuti urege kuita marara akadaro, i.e. iwe haugamuchire nemaoko dhigirii kuti rienderane nechimwe chinhu. Uri kutsamira chose pane imwe otomatiki seti yekugadzirira bvunzo.

Uye kana iwe uchida uchapupu kubva kune mumwe munhu, kuitira kuti mukuru asayine, uye iwe usapinda mukugadzirwa pasina Vasya achitaura kuti anobvumira, nezvimwewo - zvose izvi zvisina maturo zvinopinda munzira yeaiti. Nokuti kana pane mamwe mabasa akabatanidzwa nemutero, ipapo zvinhu zvose zvinowedzera 100 nguva. Naizvozvo, shanduko yacho kazhinji haigamuchirwe nemufaro nemunhu wese. Nokuti tsika dzevanhu dzakaoma kuchinja.

Kana munhu achiita basa rake remazuva ose, anoriita anenge asina kufunga. Mutoro wake wekuziva i zero. Anongotamba nayo, atova necheki mumusoro make, akazviita kachuru. Uye paunongouya uye uchimuudza kuti: "Ngatibvisei tsika iyi uye tizivise imwe itsva kutanga Muvhuro," kwaari inova mutoro une simba wekuziva. Uye inouya kune wese munhu kamwechete.

Naizvozvo, chinhu chakareruka, kunyangwe asiri munhu wese anokwanisa kutenga iyi yakasarudzika, asi izvi ndizvo zvandinogara ndichiita, izvi zvinotevera. Kana purojekiti nyowani ikatanga, saka kazhinji maitiro ese asina kuedzwa anobva apinzwa muchirongwa ichi. Nepo purojekiti ichiri diki, isu hatisi panjodzi chero chinhu. Iko hakuna Prod parizvino, hapana chekuparadza. Nokudaro, inogona kushandiswa sekudzidzira. Iyi nzira inoshanda. Asi haasi makambani ese ane mukana wekutanga mapurojekiti akadaro kazhinji. Kunyangwe izvi zvichishamisawo, nekuti iko zvino kwave neshanduko yedhijitari yakakwana, munhu wese anofanira kutanga kuyedza kuitira kuti aenderane nevakwikwidzi.

Pano unosvika pamhedziso yokuti unofanira kutanga wanzwisisa zvaunofanira kuita. Nyika haina kunaka, uye prod haina kunaka zvakare.

Hongu, zvinhu izvi zvakabatana.

Mabhizinesi zvakare haanzwisisi nguva dzose kuti anofanirwa kuenda nenzira iyi.

Pane mamiriro ezvinhu umo pasina shanduko inobvira zvachose. Iyi ndiyo mamiriro ezvinhu apo kune kuwedzera kudzvinyirira pachikwata. Chikwata chatotsva. Haana nguva yekuzorora chero ipi zvayo yekuedza. Vanoshanda pazvinhu kubva mangwanani kusvika manheru. Uye manejimendi ane mashoma uye mashoma maficha. Zvakawanda zvichidiwa. Mumamiriro ezvinhu akadaro, hapana kuchinja kunobvira zvachose. Chikwata chingoudzwa kuti mangwana tichaita zvimwe chete nezuro, isu tinongoda kugadzira zvimwe zvishoma. Mupfungwa iyi, hapana shanduko kune chero maitiro anogoneka. Iyi ndiyo classic situation kana pasina nguva yekurodza demo, miti inoda kutemwa, saka vanoitema nedemo rakagomara. Hapana mazano ari nyore pano.

(Dmitry) Ini ndichaverenga tsananguro kubva mukutaura: "Asi isu tinoda yakawanda yekuvhara bvunzo pamatanho akasiyana. Inguvai yakagoverwa yebvunzo? Inodhura zvishoma uye inotora nguva yakawanda. "

(Oleg) Iyi ipfungwa isiriyo yekare. Panofanira kuva nemiedzo yakakwana yekuti uve nechivimbo. Kuenderera mberi Kubatanidzwa hachisi chinhu icho 100% yebvunzo inoitwa kutanga uye ipapo ndipo paunotanga kushandisa tsika iyi. Kuenderera mberi Kubatanidzwa kunoderedza mutoro wako wekuziva nekuda kwekuti imwe neimwe yekuchinja kwaunoona nemaziso ako iri pachena zvokuti unonzwisisa kana ichaputsa chimwe chinhu kana kwete, kunyange pasina miedzo. Iwe unogona kukurumidza kuedza izvi mumusoro wako nekuti shanduko idiki. Kunyangwe iwe uchingove nemanyorero testers, zviri nyore kwavari zvakare. Iwe wakadzungaira ukati: "Tarisa, pane chatyoka?" Vakatarisa ndokuti, "Kwete, hapana chakaputswa." Nekuti ano tester anoziva pekutarisa. Iwe une kuzvipira kumwe kwakabatana nechidimbu chimwe chekodhi. Uye izvi zvinoshandiswa nemaitiro chaiwo.

Pano iwe, hongu, wakashongedzwa.

(Dmitry) Handibvumi pano. Pane muitiro - bvunzo-inofambiswa budiriro, izvo zvichakuponesa kubva izvi.

(Oleg) Zvakanaka, ini handisati ndasvika panguva iyoyo. Yekutanga kunyepedzera ndeyekuti iwe unofanirwa kunyora zana rebvunzo kana iwe haufanire kuita Kuenderera Kubatanidzwa zvachose. Haisi chokwadi. Aya maitiro maviri akafanana. Uye havana kutsamira zvakananga. Test coverage yako inofanira kuva yakakwana. Zvakakwana - izvi zvinoreva kuti iwe pachako unovimba kuti mhando yatenzi yakagara tenzi wako mushure mekuita inokubvumira kuti udzvanya bhatani re "Deploy" pamusi weChishanu wakadhakwa manheru. Unoita sei izvi? Kuburikidza nekuongorora, kuburikidza nekuvhara, kuburikidza nekutarisa kwakanaka.

Kutarisisa kwakanaka hakusiyaniswe nebvunzo. Kana iwe ukamhanyisa bvunzo kamwe pane pre prod, ivo vanotarisa ese ako mushandisi zvinyorwa kamwe uye ndizvozvo. Uye kana iwe ukavamhanyisa mune isingaperi loop, saka iyi ndiyo yako yakatumirwa yekutarisa sisitimu, iyo isingaperi inoedza zvese - ingave yakadonha kana kwete. Muchiitiko ichi, musiyano chete ndewekuti wakaitwa kamwe chete kana kaviri. Iyo yakanaka kwazvo seti yemiedzo ... ichimhanya kusingaperi, uku kutarisisa. Uye kutarisisa kwakakodzera kunofanira kunge kwakadai.

Uye saka, sei chaizvo iwe uchazadzisa iyi nyika kana iwe wagadzirira neChishanu manheru uye kuenda kumba mumwe mubvunzo. Pamwe unongo shinga.

Ngatidzokerei kumashure zvishoma kuContinuous Integration. Takamhanyira kune imwe nzira yakati siyanei yakaoma.

Uye chechipiri chinyengeri ndechekuti MVP, vanoti, inoda kuitwa nekukurumidza, saka miedzo haidiwi ipapo zvachose. Kwete nenzira iyoyo. Ichokwadi ndechokuti kana iwe ukanyora nyaya yemushandisi muMVP, unogona kuigadzira pabhora, kureva kuti, wakanzwa kuti pane imwe nyaya yemushandisi uye pakarepo wakamhanyira kuinyora, kana kuti unogona kushanda uchishandisa TDD. Uye maererano neTDD, sezvinoratidzwa nemaitiro, hazvitore nguva yakareba, i.e. bvunzo imhedzisiro. Tsika yeTDD haisi yekuyedza. Kunyangwe izvo zvinonzi Test Driven Development, hazvisi zvebvunzo zvachose. Iyi zvakare inzira yekuvaka. Iyi inzira yekunyora chaizvo zvinodiwa kwete kunyora zvisingadiwe. Iyi itsika yekutarisa pane inotevera iteration yekufunga kwako maererano nekugadzira chivakwa chekushandisa.

Nokudaro, hazvisi nyore kubvisa zvinyengeri izvi. MVP uye bvunzo hazvipokana. Kunyangwe, pane kudaro, pane zvinopesana, kana iwe ukaita MVP uchishandisa TDD kudzidzira, ipapo iwe uchazviita zviri nani uye nekukurumidza kupfuura kana iwe uchizviita pasina kudzidzira zvachose, asi pabhora.

Iyi ipfungwa isiri pachena uye yakaoma kunzwisisa. Paunonzwa kuti ikozvino ndichanyora mimwe miedzo uye panguva imwe chete ndichaita chimwe chinhu nokukurumidza, zvinonzwika zvisina kukwana zvachose.

(Dmitry) Vanhu vazhinji pano, pavanodaidza MVP, vanhu vane usimbe hwekunyora chimwe chinhu chakajairika. Uye izvi zvichiri zvinhu zvakasiyana. Hapana chikonzero chekushandura MVP kuita chimwe chinhu chakaipa chisingashande.

Hongu, hongu, wakarurama.

Uye ipapo kamwe kamwe MVP mune prod.

Nokusingaperi.

Uye TDD inonzwika zvisina kujairika kana iwe ukanzwa kuti unonyora bvunzo uye uchiita kunge uri kuita rimwe basa. Zvinonzwika zvinoshamisa, asi muchokwadi zvinobuda nekukurumidza uye nekunaka nenzira iyi. Paunonyora bvunzo, iwe unotofunga zvakanyanya mumusoro wako nezve iyo kodhi ichadaidzwa uye sei, pamwe nemaitiro api atinotarisira kubva kwairi. Iwe haungoti ndanyora rimwe basa uye rinoita chimwe chinhu. Pekutanga waifunga kuti ane zvakati nezvakati, aizoshevedzwa nenzira yakati. Iwe unovhara izvi nemiedzo uye kubva pane izvi iwe unonzwisisa kuti yako interfaces ichataridzika sei mukati mekodhi yako. Izvi zvine simba guru pazvivakwa. Kodhi yako inongoerekana yawedzera modular, nekuti unotanga waedza kunzwisisa kuti uchaiedza sei, wozoinyora chete.

Zvakaitika kwandiri neTDD ndezvekuti pane imwe nguva ndakahaya Ruby chipangamazano pandakanga ndichiri Ruby programmer. Uye anoti: "Ngatizviite zvinoenderana neTDD." Ndakafunga kuti: "Damn, ikozvino ndinofanira kunyora chimwe chinhu chekuwedzera." Uye takabvumirana kuti mukati memavhiki maviri ndaizonyora kodhi yese yekushanda muPython ndichishandisa TDD. Pashure pemavhiki maviri, ndakaona kuti ndakanga ndisingadi kudzokera. Mushure memavhiki maviri ekuyedza kushandisa izvi kwese kwese, unoona kuti zvave nyore sei kwauri kuti ufunge. Asi izvi hazvisi pachena, saka ndinokurudzira kumunhu wese kuti kana uine manzwiro ekuti TDD yakaoma, inopedza nguva uye isingakodzeri, edza kuomerera nayo kwemavhiki maviri chete. Zviviri zvakandikwanira.

(Dmitry) Tinogona kuwedzera pfungwa iyi kubva pakuona kwekushanda kwezvivakwa. Tisati taparura chero chinhu chitsva, tinoita monitoring tozotanga. Muchiitiko ichi, kutarisa kunove kwakajairika kuyedzwa kwatiri. Uye kune budiriro kuburikidza nekutarisa. Asi anenge munhu wese anoti kureba, ndine nungo, ndakaita dhizaini yenguva pfupi. Kana isu takaita zvakajairika kutarisa, tinonzwisisa mamiriro eCI system. Uye iyo CI system ine yakawanda yekutarisa. Isu tinonzwisisa mamiriro ehurongwa, tinonzwisisa zviri mukati maro. Uye panguva yekusimudzira, isu tiri kungoita iyo system kuti isvike kune inodiwa.

Aya maitiro ave achizivikanwa kubva kare. Takakurukura izvi anenge makore mana apfuura. Asi mumakore 4 hapana chakachinja.

Asi pane ichi chinyorwa, ndinokurudzira kugumisa hurukuro yepamutemo.

Vhidhiyo (yakaiswa sechinhu chenhau, asi nekuda kwechimwe chikonzero hachishande):

https://youtu.be/zZ3qXVN3Oic

Source: www.habr.com

Voeg