Seit ich Clean Code gelesen habe, habe ich versucht, meinen Code beschreibend und leicht verständlich zu halten. Ich habe eine Bedingung, in der A oder B ausgefüllt werden müssen. Aber nicht beide. Und nicht auch nicht. Gegenwärtig ist die if
-Anweisung zur Überprüfung dieser Bedingung auf einen Blick schwer zu folgen. Wie würden Sie folgendes deutlich zu machen, auf einen Blick zu schreiben, wasA oder B, nicht beide, nicht auch nicht
if ((!string.IsNullOrEmpty(input.A) && !string.IsNullOrEmpty(input.B))
|| string.IsNullOrEmpty(input.A) && string.IsNullOrEmpty(input.B))
{
throw new ArgumentException("Exactly one A *OR* B is required.");
}
Sie wollen die Antwort für Java-Code oder irgendein Code? –
Ich weiß, dass dies nicht das ist, was du fragst, und es ist eine ganz andere Diskussion, die endlos aufgepeppt wurde, aber ich denke nicht, dass ich hier eine Ausnahme machen würde ... vielleicht eine einfache Nachricht an den Benutzer? – mickeyf
@Claus, ich schreibe eigentlich C#, aber die Sprache sollte nicht auf die Frage – CaffGeek