Question

Je parle souvent aux programmeurs qui disent "Ne mettez pas plusieurs instructions de retour dans la même méthode."Quand je leur demande de me dire les raisons, tout ce que je reçois"La norme de codage le dit." ou "C'est confu."Quand ils me montrent des solutions avec une seule instruction de retour, le code me semble plus laid. Par exemple:

if (condition)
   return 42;
else
   return 97;

"C'est moche, vous devez utiliser une variable locale!"

int result;
if (condition)
   result = 42;
else
   result = 97;
return result;

Comment ce ballonnement de code à 50% facilite-t-il le programme? Personnellement, je trouve cela plus difficile, car l'espace d'État vient d'augmenter d'une autre variable qui aurait facilement pu être empêchée.

Bien sûr, normalement j'écrirais:

return (condition) ? 42 : 97;

Mais de nombreux programmeurs évitent l'opérateur conditionnel et préfèrent la forme longue.

D'où vient cette notion de "One Return Only"? Y a-t-il une raison historique pour laquelle cette convention est née?

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
scroll top