Kód vélemények
Szükség van-e a kód felülvizsgálatára? Nem vizsgáljuk felül a kódot egyidejűleg a fejlesztéssel? Ha már rendszeresen használom a refaktorálást, akkor mi értelme újra ellenőrizni a kódot?
Sok kérdés merülhet fel egy fejlesztői csoportban a kódellenőrzésekre hivatkozva. De még a kérdéseknél is rosszabbak az aggodalmak vagy a félelmek ("ha a kódomat ellenőrzik, a munkám tönkremegy!"). Először is azzal kezdjük, hogy meghatározzuk, mi a kódellenőrzés (kódellenőrzés).
A Code Review meghatározása
Kezdjük egy olyan forgatókönyvből, amelyben agilis keretek között dolgozunk, és a különböző lehetőségek között válasszuk a Scrum-ot. Ennek a posztnak nem célja, hogy elmélyüljön e módszertanok működésében. Bár lehetséges, hogy a jövőben többet fogok róluk beszélni, az Internet tele van velük kapcsolatos információkkal; Kifejezetten Javier Garzás blogját ajánlom.
Létre kell hozni egy kezdeti keretrendszert a szoftverfejlesztés megközelítésének megkereséséhez. A Scrumban a "fejlesztői egység" a felhasználói történet, az időegység pedig a sprint.
Képzeljük el, hogy egy 4 fejlesztőből álló csapatnak egy sprint alatt el kell osztania több felhasználói történet fejlesztését. Képzeljük el, hogy egy egyéni fejlesztőnek (nevezzük Luis-nak) hozzárendelik az X felhasználói történetet (például: "Adatmaradási réteg létrehozása").
A kódellenőrzés az a folyamat, amelynek során a csapat többi tagja együtt áttekinti Luis adott felhasználói történet megvalósítását, ötleteket adva a továbbfejlesztésére, esetleg átalakítására, esetleges hibák, architektúra hibák felfedezésére, a tesztek lefedettségének hiányára bizonyos esetekben, és egy sor egyéb felmerülő dolog.
Vonakodás ...
Legyünk közvetlenek: „bonyolult” profilok bővelkednek szakmánkban. Anélkül, hogy túl részletes részletekbe menne, bizonyos fejlesztők nem állnak kritikával szemben, még kevésbé módosíthatják az általuk elkészült és elméletileg működő kódot. Ha bármelyik olvasó ebbe a csoportba tartozik, a következő kérdéseket tenném fel neki:
- Könnyen érthető a kódod másoknak, mint te?
- Maga is képes lenne megérteni ezt a kódot pár év múlva?
- A kód fejlesztésekor figyelembe vett-e MINDEN olyan tényezőt, amely befolyásolja vagy befolyásolhatja a rendszert?
- Ha feltűnő hibát fedezett fel valaki más kódjában, nem gondolja, hogy szakemberként felelős a kijavításért? Ebben az esetben nem jobb az ilyen hibák mielőbbi észlelése?
A kód gyűjtése. A kód nem az enyém
Valójában, amikor üzleti projekten dolgozunk, programozunk egy kódot, amelyet a jövőben is jó néhány fejlesztő fejleszt, fejleszt és karbantart. Úgy gondolom, hogy egy ilyen területen nincs értelme a kód egyéni tulajdonjogáról beszélni, éppen ellenkezőleg.
A kód közös tulajdonjoga arra ösztönzi az agilis csapatot, hogy vállalja a felelősséget a teljes szállított rendszer működéséért. Nem szabad ujjal mutatni a tettesekre, ha valami nem működik, vagy azt sugallni, hogy "nem voltam ott" vagy "nem voltam ott". Azt mondanám, hogy valami ilyesmi nyilvánvaló ... de egyáltalán nem az.
A tapasztalatok azt tanították, hogy a kód felülvizsgálata a leghatékonyabb módszer az ideál elérésére.
A folyamat
A kódellenőrzés folyamata akkor kezdődik, amikor egy fejlesztő feltölti, vagy már feltöltötte a központi adattárba (feltételezzük, hogy Git vagy hasonló verzióvezérlő eszközt használunk) a hozzárendelt előzmények megvalósításához kapcsolódó összes változást. felhasználó.