Desde que leí el Código de limpieza, he tratado de mantener mi código descriptivo y fácil de entender. Tengo una condición donde se deben completar A o B. Pero no ambos. Y no ninguno. Actualmente, la declaración if
para verificar esta condición es difícil de seguir de un vistazo. ¿Cómo se escribe lo siguiente para que quede claro de un vistazo lo que se está comprobandoA o B, no ambos, ninguno tampoco
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.");
}
¿Quieres la respuesta de código Java o simplemente cualquier código? –
Sé que esto no es lo que estás preguntando, y es una discusión totalmente diferente que se ha repetido interminablemente, pero no creo que arroje una excepción aquí ... ¿tal vez un simple mensaje para el usuario? – mickeyf
@Claus, en realidad estoy escribiendo C#, pero el idioma no debería importar a la pregunta – CaffGeek