Las cláusulas de protección o las condiciones previas (como probablemente pueda ver) verifican si se cumple una determinada condición y luego interrumpe el flujo del programa. Son ideales para lugares donde realmente solo le interesa un resultado de una if
declaración. Entonces, en lugar de decir:
if (something) {
// a lot of indented code
}
Invierte la condición y se rompe si se cumple esa condición inversa
if (!something) return false; // or another value to show your other code the function did not execute
// all the code from before, save a lot of tabs
return
no está tan sucio como goto
. Le permite pasar un valor para mostrar el resto de su código que la función no pudo ejecutarse.
Verá los mejores ejemplos de dónde se puede aplicar esto en condiciones anidadas:
if (something) {
do-something();
if (something-else) {
do-another-thing();
} else {
do-something-else();
}
}
vs:
if (!something) return;
do-something();
if (!something-else) return do-something-else();
do-another-thing();
Encontrará que pocas personas argumentan que la primera es más limpia pero, por supuesto, es completamente subjetiva. A algunos programadores les gusta saber en qué condiciones está operando algo por sangrado, mientras que prefiero mantener el flujo del método lineal.
No voy a sugerir ni por un momento que las preconfiguraciones cambiarán tu vida o te acostarán, pero es posible que tu código sea un poco más fácil de leer.