Des "ifs" imbriqués :
if (condition)
{
// half-massive amount of code here
if (!breakOutCondition)
{
//half-massive amount of code here
}
}
Au risque de me faire rétrograder -- cela m'est déjà arrivé par le passé -- je mentionnerai qu'une autre option (impopulaire) serait bien sûr la redoutable goto
une déclaration de rupture est juste un goto déguisé.
Enfin, je me ferai l'écho du sentiment général selon lequel votre conception pourrait probablement être améliorée de manière à ce que l'imposante déclaration "si" ne soit pas nécessaire, sans parler du fait qu'il faille s'en affranchir. Au moins, vous devriez être capable d'extraire quelques méthodes et d'utiliser un retour :
if (condition)
{
ExtractedMethod1();
if (breakOutCondition)
return;
ExtractedMethod2();
}