19. Hibakeresés

Egy becslés szerint egy kereskedelmi szoftver kifejlesztési idejének 90%-a csak a hibakeresés és a tesztelés. Pont ezért is elsõdlegesen fontos a nemcsak helyes, hanem az érhetõ kód megírása.

Ennek ellenére a használat során mindig találni hibákat (bugokat), Néhány tanács, ezen hibák detektálására és kezelésére:

Hasznos fordító funkciók

A legtöbb Fortran fordító rendelkezik olyan funkciókkal, amelyeket a felhasználó szabadon alkalmazhat. A következõkben a SUN Fortran 77 fordítóprogramhoz olvashatunk hasznos dolgokat, de a legtöbb más fordítóhoz is hasonló megállapításokat tehetnénk. (maximum ott a betük jelentése más).
-ansi
Figyelmeztett a nem standard Fortran 77 kiegészítésekre a mi verziónkban.
-u
Minden beépített típus deklaráció szabályt mellõz, azaz kikapcsolja az automatikus deklarációt. Ha ezt a funkciót a mi fordítónk nem támogatja, egy szinte teljesen hasonló dolgot kaphatunk, ha az alábbival egészítjük ki a deklarációnkat
      implicit none (a-z)
(segéd)programjaink elején.
-C
Ellenõrzi a tömbök kiterjedését, méretét, és megpróbálja detektálni a tömbön kivüli elemeket. Sajnos nem tudja az összes hibát így megtalálni.

Néhány gyakori hibaforrás

Néhány gyakori hibaforrás, ezekre (is) kiemelten figyeljünk:

További hibakeresési tanácsok

Ha hibát észlel a fordító, próbáljuk megtalálni. Szintaktikai (elírási) hibákat könnyü megtalálni. Az igazi problémát a logikai vagy a futattási hibák jelentik. A régi módszer erre, hogy sok write utasítással nyomon követjük a változók értékeit. Ez egy kicsit fárasztó és "macerás" mód, mivel újra és újra fordítani kell a programot, mivel mindig kicsit módosítjuk a programunkat. Újabban speciális hibakeresõket is alkalmazhatunk. Soronként haladva vagy egyéni felosztás szerint végignézzük a programot, megjelenítjük a részeredményeket és még sok minden... A legtöbb UNIX rendszerû számítógépen a dbx és a gdb nevû hibakeresõket találjuk. Sajnos ezek többsége régimódi szöveges megjelenésû, de már létezik grafikus verzió is, mint például az xdbx vagy dbxtool.

 

Copyright © 1995-7 by Stanford University. All rights reserved.

Fordították: Seres András Tamás és Szalai Szilvia (ELTE-TTK)


[Tovább] [Tartalomjegyzék]