Wenn ich eine Funktion schreibe, möchte ich oft sicherstellen, dass die Eingaben gültig sind, um solche Fehler so früh wie möglich zu erkennen (ich glaube, dies nennt man Vorbedingungen). Wenn eine Vorbedingung fehlschlägt, habe ich immer eine Ausnahme ausgelöst. Aber ich fange an zu bezweifeln, ob dies die beste Vorgehensweise ist und wenn nicht, wären Behauptungen angemessener.
Wann sollte ich also was tun? Wann ist es angebracht, eine Behauptung zu verwenden und wann ist es angebracht, eine Ausnahme auszulösen?