Hogyan lehet javítani a hibakeresési készségeket

Mindannyian olyan kódot írunk, amely valamikor elszakad. Ez a fejlesztési folyamat része. Ha hibába ütközik, úgy érezheti, hogy nem tudja, mit tegyen. Azonban még a legtapasztaltabb fejlesztők is hibákat és hibákat mutatnak be, amelyek megtörik kódjukat. Végül is emberek vagyunk.

A legfontosabb, hogy tanuljon ezekből a hibákból, és elkerülje azok megismétlését technikák fejlesztésével, amelyek javítják a programozási és hibakeresési képességeit. A hibák elsősorban logikai vagy szintaktikai jellegűek. Némelyik kivételekkel vagy összeomlásokon keresztül nyilvánul meg, míg mások csak a szoftver használatakor figyelhetők meg.

Íme néhány hiba, amelyet a fejlesztők elkövetnek

Az üzenetek naplózásának elmulasztása

Az egyik leghasznosabb forgatókönyv, amikor összeomlik a program, és nincsenek hibaüzenetek, amelyek jeleznék a hibát. Az első lépés annak azonosítása, hogy a program összeomlik-e indításkor vagy futás közben. Ezt úgy teheti meg, hogy egy egyszerű naplóüzenetet nyomtat a terminálra a kód elején.

Ha nem látja a naplóüzenetet, akkor a program valószínűleg összeomlik betöltés közben, és ez valószínűleg függőséggel vagy építéssel kapcsolatos probléma.

Ha látja az üzenetét, akkor le kell szűkítenie a baleset általános környékére. A legjobb módszer az, ha stratégiai szempontból néhány naplóüzenetet helyez el a programban, attól függően, hogy mennyi információval rendelkezik a végrehajtási útvonalról, mire összeomlik. Ezután csak annyit kell tennie, hogy megnézze, mely üzenetek vannak kinyomtatva.

Nem sikerült elolvasni a hibaüzeneteket

A kezelőfelület kivételes üzenetei általában a felhasználói felületen vagy a fejlesztői konzolon jelennek meg. Néha ezek az üzenetek láthatók a háttérprogramban a terminálon vagy a naplófájlokon keresztül. Függetlenül attól, hogy hol fordulnak elő ezek a hibák, az új fejlesztők megfélemlítik őket, és nem szánnak időt arra, hogy elolvassák őket.

Ez az első számú oka annak, hogy a hibakeresés sok fejlesztő számára hosszabb ideig tart. Az első dolog, amit meg kell tennie, hogy szánjon időt arra, hogy elolvassa az előtted megjelenő hibaüzenetet, hagyja, hogy süllyedjen, és alaposan feldolgozza.

Nem sikerült elolvasni a rendszernaplófájlokat

Néhány program naplófájlokat generál, vagy ír a rendszer eseménynaplójába. Ezek a naplók gyakran tartalmaznak hasznos információkat. Még ha nem is mondja meg pontosan, mi a baj, előfordulhat, hogy figyelmeztetés vagy hibaüzenet, vagy akár sikerüzenet is utal arra, hogy mi történt a hiba előtt.

A nyomnaplók írása nem sikerült

A nyomkövetés a program folyamatának és adatainak követése. A nyomkövetési üzenetek írása a program egészében megkönnyíti a hibakeresési folyamatot. A Nyomkövetési naplók segítségével egyszerűen nyomon követheti a program végrehajtását az alkalmazás futása során.

Az inkrementális változtatások, az építés és a tesztelés elmulasztása

Sok fejlesztő nagy darab kódot ír, mielőtt elkészítené és tesztelné. A hibák megtalálásának ideje a megváltozott kód mennyiségével arányosan növekszik. Arra kell törekednie, hogy növekményes változtatásokat hajtson végre, felépítse és minél gyakrabban tesztelje őket. Ez biztosítja, hogy ne kerüljön olyan helyzetbe, hogy sok kódot írtak, mielőtt felfedezte, hogy a program nem működik.

Gyakran még át is alakítom a kódomat, hogy leegyszerűsítsem az írásaimat.

Nem sikerült megírni a teszt automatizálást

Az egység-tesztek és a végpontok közötti teszt-automatizálás lehetővé teszi, hogy elkapja a lehetséges hibákat, amint azok bekövetkeznek. Az egyik ok, amiért a meglévő kód megszakad, az, hogy a fejlesztők átalakítják a kódot, ha alacsony a teszt lefedettségük, ami azt jelenti, hogy az összes változtatást nem tesztelik automatikusan.

Az elimináció módszerének elmulasztása

Ha nem tudja azonosítani a probléma kiváltó okát, akkor a megszüntetés módszerét kell alkalmaznia. Kommentálhat új kódblokkokat, hogy megtudja, a hibák megszűnnek-e. A kódblokkok kiküszöbölésével közelebb kerülhet a probléma diagnosztizálásához.

Kialakíthat egy bizonyos hipotézist, és megpróbálhatja bizonyítani vagy cáfolni. Sokszor egy egyszerű feltételezés megakadályozhatja a hibák megtalálását.

Másolás és beillesztés a StackOverflow alkalmazásból

A fejlesztők gyakran úgy másolják és illesztik be a kódot a verem túlcsordulásából, hogy nem értik, mit csinál. Ennek annyi káros hatása van. Először is fontos, hogy figyeljen arra, hogy mi kerül alkalmazásába.

Gyakrabban, mint szeretném, amikor egy kérdést írok a StackOverflow-ra, és azon gondolkodom, hogyan lehet hatékonyan megfogalmazni, végül a saját kérdésemre válaszolok!

Hasonlóképpen, amikor néha a csapat többi tagjával beszélgetek, végül a saját kérdésemre válaszolok. Ez azért történik, mert arra kényszeríti, hogy gondolkodjon a megoldásán.

Ha nem sikerül újra megoldani a problémájukat

Az egyik legsikeresebb hibakeresési technika, amelyet megtaláltam, az az, hogy megpróbálom újra és újra végigjárni a megoldást, és egyes esetekben megpróbálok bizonyos funkciókat a semmiből újra megvalósítani. Ez arra kényszeríti Önt, hogy megtalálja a lehetséges problémákat a megvalósítás újbóli létrehozásával.

Nem sikerült visszalépni

Normális esetben, ha el tudja különíteni a tüneteket egy adott területről, elkezdheti felfelé haladni a hívásveremben, hogy ellenőrizze az összes változót és a várható értékeket. Ez gyorsan a program olyan részeinek felfedezéséhez vezethet, ahol a dolgok váratlanul viselkednek.

Nem sikerült megtanulni a hibakeresőt

Végül, az egyetlen legjobb befektetés, amelyet saját magába tehet, az, hogy megtanulja használni a hibakeresőt. Minden IDE nagy teljesítményű hibakeresővel érkezik. Ugyanazokat az alapfogalmakat követik. Lehetővé teszik az alkalmazás végrehajtásának programozott leállítását, akár indításkor, akár a programfolyamat egy meghatározott részén.

Rengeteg hibakereső eszköz is segíthet ebben a folyamatban.

Ha ez a cikk hasznos volt, ??? és Kövess engem a Twitteren.

GitHub kiterjesztések a termelékenység növelése érdekében

Itt vannak az általam használt GitHub kiterjesztések. Lehetővé teszik a GitHub termelékenységének javítását. Kérjük, ossza meg… medium.freecodecamp.org