Actualmente estoy trabajando en un poco de código que (creo) requiere bastantes declaraciones incrustadas. ¿Hay algún estándar para cuántas instrucciones if para incrustar? La mayoría de mis búsquedas en Google han revelado cosas relacionadas con la excelencia ... no sé por qué.¿Existe tal cosa como demasiadas sentencias if if?
Si hay un estándar, ¿por qué? ¿Es para legibilidad o para mantener el código funcionando sin problemas? En mi opinión, tiene sentido que sea principalmente para la legibilidad.
Un ejemplo de mi si-estructura:
if (!all_fields_are_empty):
if (id_search() && validId()):
// do stuff
else if (name_search):
if (name_exists):
if (match < 1):
// do stuff
else:
// do stuff
else if (name_search_type_2):
if (exists):
if (match < 1):
// do stuff
else:
// do stuff
else:
// you're stupid
He oído que hay un límite a 2-3 anidado for/while, pero ¿hay alguna norma para las sentencias if-?
Actualización: Tengo algunos años en mi haber. Por favor, no use tantas declaraciones if
. Si necesita tantos, su diseño probablemente sea malo. Hoy, ME ENCANTA cuando puedo encontrar una forma elegante de hacer estas cosas con un mínimo de declaraciones if
o switch
casos. El código termina siendo más limpio, más fácil de probar y más fácil de mantener. Normalmente.
duplicado posible: http://stackoverflow.com/questions/4610489/maximum-number-of-nested-conditions-allowed –
No estoy pidiendo cuántos es el máximo, que estoy preguntando cuál es la norma está entre los programadores. – Cody
No hay un máximo "estándar" entre los programadores. Cada situación tiene su propio máximo anidado. Por ejemplo, si tiene un código matemático pesado que hace algunos cálculos horribles, fácilmente iría con 15 if anidados sin problemas, si hubiera un comentario que lo explique todo cerca. Sin embargo, si partes de ese código son reutilizables, trataría de dividirlos de la manera en que podría reutilizarlo. – bezmax