Afirmei aos colegas de trabalho que níveis profundos de fluxo de controle eram prejudiciais à legibilidade do código.
Exemplo, retirado da pergunta relevante de estouro de pilha /software/52685/if-you-need-more-than-3-levels-of-indentation-youre-screwed :
for(int i=0; i<10; ++i){
Object val = repeat(i, someVar);
if(val.value > 3){
switch(val.item){
case DOG:
if(mProcess){
outputToUser(val);
doMoreThings(val, mMoreThingDoer);
if(mRepurpose){
addExample(val);
}
// and so on, and so on...
Como na maioria das coisas, é trivialmente fácil encontrar opiniões sobre esse tópico.
Gostaria de saber, no entanto, se alguém pode contribuir mais do que isso.
Por exemplo, foi realizado um estudo real relevante para o problema?
Ou podem ser apresentados outros argumentos que vão além de "eu gosto mais de X"?
