Wie viel Mühe gibt ihr euch Fehler abzufangen?
2. Sep 2008, 13:56
Vielleicht wurde die Frage schon gestellt, aber ich stelle sie mir immer wieder. Wann ist der Guten genug?
Beispiel: ihr legt einige Daten (Mehrzahl von Datum) irgendwo in Stringform ab, z.B. in einer Ini. Jetzt wollt ihr die Daten incl. dazugehörige Informationen in ein ListView anzeigen. ListView schluckt Strings, also muß das Datum nicht überprüft werden. Nun stellen wir uns vor ein Witzbold ändert ein Datum in Textform von 01.09.2008 in 01.09.200F (Beachtet das F).
Nun stellt sich die Frage wie viel geprüft werden muß. An dieser Stelle wäre es egal, denn die Daten sollen hier nur angezeigt werden. Also einfach schlucken und unsinnige Daten anzeigen und den User selbst merken lassen? Überprüfen, aber ohne Hinweis weglassen, da falsches Datum? Oder bei jedem falschen Datum eine Fehlermeldung ausgeben?
An einer anderen Stelle werden die Daten verarbeitet. Hier muß das Datum stimmen. Wie hier reagieren? Falsche Daten ignorieren? Oder bei jedem falschen Datum eine Fehlermeldung, auch wenn das bedeutet, daß es 1000 falsche Daten sind und der User eine halbe Stunden Fehlermeldungen klicken muß? Oder einfach einen Zähler einbauen und wenn der nach dem gesamten Ablauf größer Null ist, informieren?
Wie gesagt, das mit den Daten ist nur ein konstruiertes Beispiel, also nicht klugscheißen und meinen, daß man Daten nicht als Textform speichert. Es geht nur drum wann man Fehler anfangen sollte. Ich hab immer das Gefühl, daß ich zuviel prüfe. Etwa die hälfte des Programms besteht bei mir in der Regel aus Abfangroutinen. Sogar da wo ich es nicht machen müßte, mache ich es. Bevor ich ein Text in ein TMemo lade prüfe ich zumindest ob die Datei vorhanden ist. Nun ob ich eine Fehlermeldung ausgebe oder das System ist eigentlich egal, aber ich mache es trotzdem.
Aber wie sehr sollte man den User vor sich selbst schützen? Sollte man alles immer überprüfen? Auch bei Daten die der User nicht manipulieren sollte? Sollte man es einfach verarbeiten und wenn einer die Daten manipuliert hat, dann ist er selbst schuld und wenn das Ergebnis falsch ist? Oder sollte man die User vor sich selbst schützen und alles überprüfen und abfangen?
|