Medii de dezvoltare

În orice proces de producție, care include dezvoltarea programelor, există diferite etape. Aproximativ, ele pot fi reprezentate după cum urmează:

  1. Producție (dezvoltare)
  2. asamblare
  3. Control și testare
  4. Informații despre expediere

producere

Locul în care are loc acest proces se numește mediul de dezvoltare, care, de regulă, este local. De ce avem nevoie de un nume special? Pentru a înțelege acest lucru, trebuie să luăm în considerare situația în ansamblu. Întotdeauna avem cel puțin două medii. Una este mediul de dezvoltare (adesea se numește mediul de dezvoltare), iar celălalt este mediul de operare (așa cum se spune rar, de obicei, mediul de luptă, producția). Și codul ar trebui să se comporte diferit în funcție de mediu.







  • În mediul de dezvoltare, nivelul de logare este mai mare, adică vedem toate mesajele de depanare și ne ajută să ne dezvoltăm. În producție, acest nivel este dezactivat, deoarece spațiul de disc zboară foarte repede.
  • În mediul de dezvoltare, nu putem trimite scrisori reale. Dacă se întâmplă acest lucru, atunci utilizatorii dvs. nu vor fi fericiți. Apropo, acest lucru se întâmplă adesea la cei care nu configurează medii diferite.
  • În mediul de dezvoltare, caching-ul este dezactivat (o tehnică pentru accelerarea accesului).
  • Mediul de dezvoltare poate conține un cod care nu funcționează și se află într-o stare neconsonantă (necoordonată). Acest lucru este normal, ne dezvoltăm.

În plus, codul în mediul de dezvoltare este scris, de obicei, nu în ramura principală a sistemului dvs. de control al versiunii, ci în funcția de sucursală. Acest lucru este important, deoarece acestea nu blochează capacitatea de a face modificări rapide, în cazul în care serverul este ceva rupt, și este necesar să se stabilească doar o mică bucată, iar noile evoluții nu sunt gata să toarne.

Din păcate, în mediul php, situația este încă adesea întâlnită, în care dezvoltarea se desfășoară direct într-un mediu de luptă. Care duce la consecințe foarte triste.

După ce ați implementat sarcina (funcția) și a fost testată, codul de sarcină se integrează în ramura principală și are loc așa-numita integrare. Acest nume se datorează faptului că, poate, în plus față de această caracteristică, dezvoltarea unei alte trăsături a fost realizată în paralel, într-o altă ramură, și nu tu ai fost cel care ai îndeplinit sarcina cu o mare probabilitate. Și acum s-au întâlnit în ramura principală și lucrează împreună sau nu - rămâne de văzut.

(Acest element depinde în mare măsură de ce proces este selectat în echipa respectivă).

Control și testare







De obicei, testarea implică mai multe etape. Primul pe care există un test specific pentru caracteristica dvs. particulară și al doilea, care verifică tot ce merge în următoarea versiune.

La urma urmei, chiar colectând toate într-o ramură (toate caracteristicile) și verificându-le local, nu puteți fi complet sigur că în luptă, pe date reale, totul va funcționa bine. În plus, cel mai probabil, aveți un manager sau chiar și testere care doresc să vadă / să verifice dacă totul este bine. Iar aici mai este un mediu de producție care se încadrează în scenă, care se numește mediu de integrare (preproducere) sau staționare (așa cum o numește toată lumea).

Stadializarea este un mediu în care se face un control înainte de luptă. Particularitatea lui este că este cât mai aproape posibil de condițiile mediului de luptă, ceea ce face posibilă testarea mai completă a ceea ce se întâmplă. De obicei, acesta este locul unde managerii, testerele și clienții merg. Deseori, stadializarea efectuează două sarcini simultan. Atât verificarea caracteristicilor specifice de la dezvoltatori, cât și rularea finală a aplicației înainte de lansare.

Medii de dezvoltare

Aici există încă un cuvânt nou: "eliberare". Eliberarea se numește "eliberare" într-un alt mod. Pe de o parte, acesta este procesul de lansare a unei noi versiuni a sistemului în luptă. Pe de altă parte, acest lucru se numește adunarea, care este o nouă versiune a sistemului.

Server de integrare continuă

Un astfel de sistem vă permite să accelerați cu mult procesul de integrare. Sarcina dezvoltatorilor este mult redusă și rutina este automatizată. Dezvoltatorul ar trebui să scrie codul și să îl trimită la depozit, iar sistemul va efectua verificările necesare și va fuziona. Integrarea continuă face parte dintr-o practică numită "Extreme Programming (XP)".

Am pierdut un punct important. Cum intră noul cod în preproducție și în mediul de producție după terminarea dezvoltării? Și o face datorită procesului, care în poporul comun se numește "implementare".

Așa cum arată practica, mulți încă mai au de-mâini. Du-te la server (și dacă există multe dintre ele?) Clonează codul, schimbați baza mâinilor și așa mai departe.

Puteți discuta fără sfârșit despre cât de rău este. Pornind de la faptul că, de fapt, nu există nici un proces simplificat, repetabile, ceea ce înseamnă că există întotdeauna posibilitatea ca explozia și factorul uman este ceva accidental uitat / pierdut / șterse. Terminarea cu faptul că cunoștințele sunt stocate într-un singur cap, iar procesul de eliberare devine tratamente de sine voodoo, care poate face doar John, dar, uneori, el devine bolnav, merge în vacanță și ar putea ieși la pensie. Adesea, în astfel de companii, eliberarea este o procedură extrem de dureroasă, care nu durează nici o oră, dar poate chiar câteva zile.

Cu un proces bine stabilit, lansarea durează zece minute și poate fi făcută de oricare dezvoltator în orice moment (aproape). Hexletul durează uneori de 5-10 ori pe zi.

Principalele sarcini cu care vă confruntați în timpul debotării:

  • Luați o nouă versiune a codului din depozit și completați-l cu serverul (e)
  • Efectuați toate pregătirile necesare: rotiți migrarea, colectați scripturi frontend, etc.
  • Schimbați proiectul la noua versiune
  • Rulați înapoi în caz de erori

Medii de dezvoltare

Distribuiți pe Facebook







Articole similare

Trimiteți-le prietenilor: