Paramter auf Fehlwerte überprüfen: Ja / Nein?



  • Hallo,
    sollte man die Parameter einer Funktion in derselben überprüfen und ggf. eine Exception werfen oder den Benutzer der Funktion diese Überprüfung überlassen und die Funktion bei (offensichtlich)falschen Werten abschmieren lassen?
    Ich tendiere ja dazu, die Überprüfung einfach wegzulassen.

    Grüße



  • Ein Programmierer hat grundsätzlich dafür zu sorgen, dass sein Code (möglichst) immer funktioniert und nicht abschmiert!



  • Ein Programmierer hat grundsätzlich dafür zu sorgen, dass sein Code (möglichst) immer funktioniert und nicht abschmiert!



  • Hängt imho auch vom Level ab auf dem sich die Funktion befindet. Ist es was ganz niedriges, was oft gebraucht wird? Zum Beispiel Wurzel ziehen. Dann würde ich die Überprüfung weglassen. Bzw. ein assert setzen. (Vielleicht auch ein eigenes ASSERT, das Exception schmeißt und den Debugger aufruft ;)).

    Handelt es sich aber um ne Funktion auf nem höheren Level, wie zum Beispiel ein Fenster erstelllen in ner GUI-Lib, dann wäre es schon angebracht sich darum zu kümmern, daß es nicht abschmiert, wenn man's falsch aufruft.

    Wenn man in jeder Funktion alle Fälle abprüfen würde würde man einen Haufen Rechenzeit velieren. Wenn eine Funktion dann eine andere aufruft würde die ja beide prüfen. Das ist schlich verschwendete Laufzeit.



  • ofensichtlich im sinne von programmierfehler? jup!
    wurzel aus minuszahl -> abschmier
    pop aus leerem vecor -> abschmier
    strlen(NULL) -> abschmier
    noch besser ist, die schmierstellen mit assert zu vergolden.


Anmelden zum Antworten