SDEC
Legacy Member
Op school wordt ons aangeleerd dat een break/return in een lus (for/while/foreach) een slechte gewoonte is en dat we het niet mogen doen!
Is dit nu echt zo? Ik vind breaken en returnen in een lus echter heel gemakkelijk en overzichtelijk + het spaart geheugen omdat je geen extra variabele moet aanmaken!
Het argument op school is dat het "overzichtelijker" is voor de beginnende programmeur, we krijgen er zelfs minpunten voor op het examen, zelfs al is het perfect correcte syntax.
Wat doen mensen in de praktijk nu? Iemand die dit argument ondersteund of het, zoals mij, ook totale onzin vind?
Even om te verduidelijken:
Zo moet het op school:
Zo (vind ik) is het logischer:
Is dit nu echt zo? Ik vind breaken en returnen in een lus echter heel gemakkelijk en overzichtelijk + het spaart geheugen omdat je geen extra variabele moet aanmaken!
Het argument op school is dat het "overzichtelijker" is voor de beginnende programmeur, we krijgen er zelfs minpunten voor op het examen, zelfs al is het perfect correcte syntax.
Wat doen mensen in de praktijk nu? Iemand die dit argument ondersteund of het, zoals mij, ook totale onzin vind?
Even om te verduidelijken:
Zo moet het op school:
Code:
public void testFunc() {
boolean stop = false;
// for lus
for(int i=0; i<MAX_IETS && stop == false; i++) {
if(isIetsWaar()) {
doeIets();
stop = true;
}
}
// while lus
while(stop == false) {
if(isIetsWaar()) {
doeIets();
stop = true;
}
}
}
Zo (vind ik) is het logischer:
Code:
public void testFunc() {
// for lus
for(int i=0; i<MAX_IETS; i++) {
if(isIetsWaar()) {
doeIets();
break;
}
}
// while lus
while(true) {
if(isIetsWaar()) {
doeIets();
break;
}
}
}

Dat is nu de goed geargumenteerde uitleg die ik hoopte te horen te krijgen.
.
ad: