" if-else " uttalanden är ganska vanligt i de flesta programmeringsspråk . I sin enklaste form , berättar en " if-else " code uttalande helt enkelt om datorn om ett visst tillstånd existerar , sedan utföra en viss åtgärd eller funktion eller göra något annat om ett annat tillstånd existerar . Överdriven användning av " if-else " uttalanden leder ofta till alltför komplex kod och häckning . Häckande uppstår när du har flera förhållanden som kan förekomma , samt en dator måste utföra en eller flera funktioner som möjligt baseras på stött tillståndet . När många förhållanden eller vägar är möjliga , är det en bra idé att använda refactoring , eller " if-else " inversion , för att försöka minska antalet " if-else " vägar . Saker du behöver
kod eller redaktör ansökan
Visa fler instruktioner
1
Starta din ansökan kod redaktör . Öppna koden fil som innehåller kapslade " if-else " uttalanden du vill invertera eller Refactor .
2
Bläddra till den punkt i källkoden som innehåller " if-else " uttalande klausuler . Addera 3
Bestäm om vakt klausuler kan förenkla inkapslade villkorliga " if-else " uttalanden . Guard klausuler förenklar kod och minska antalet potentiella STOP fel vid exekvering . Till exempel , här är ett exempel på Visual Basic-kod som innehåller alltför komplicerad kod som kan dra nytta av inversion eller refactoring med vakt klausuler :
dubbel getPaymentAmount ( ) {
dubbelt resultat ;
om ( _isSingle ) result = singleAmount ( ) ;
else {
om ( _isMarried ) result = marriedAmount ( ) ;
else {
if ( _isDivorced ) result = divorcedAmount ( ) ;
annars resultera = normalPaymentAmount ( ) ;
};
}
retur resultat ;
};
4
Invertera eller Refactor koden för att förenkla och minska eventuella stopp fel . Undvik flera häckande villkor genom att ta bort " else" -komponenten helt och hållet och ersätta det med " resultat " uttalande kommandot . Granska följande ändringar i den ursprungliga koden :
dubbel getPaymentAmount ( ) {
om ( _isSingle ) retur singleAmount ( ) ;
om ( _isMarried ) retur marriedAmount ( ) ;
om ( _isDivorced ) retur divorcedAmount ( ) ;
retur normalPaymentAmount ( ) ;
};
" avkastning " kommandot inte haltkod utförande när förhållandena existerar inte , och därför kör koden oavbrutet tills ett giltigt tillstånd hittas . Resultatet är mycket renare kod som körs snabbare med färre potentiella fel .