Ich programmiere jetzt seit ein paar Jahren und habe vor kurzem begonnen, ReSharper mehr zu verwenden. Eine Sache, die ReSharper mir immer vorschlägt, ist, die if-Anweisung zu invertieren, um die Verschachtelung zu reduzieren.
Angenommen, ich habe diesen Code:
foreach (someObject in someObjectList)
{
if(someObject != null)
{
someOtherObject = someObject.SomeProperty;
}
}
Und ReSharper schlägt vor, dass ich das mache:
foreach (someObject in someObjectList)
{
if(someObject == null) continue;
someOtherObject = someObject.SomeProperty;
}
Es scheint, dass ReSharper IMMER vorschlägt, dass ich IFs invertiere, egal wie viel verschachtelt wird. Dieses Problem ist, dass ich zumindest in EINIGEN Situationen gerne verschachtele. Für mich scheint es einfacher zu sein, zu lesen und herauszufinden, was an bestimmten Orten vor sich geht. Dies ist nicht immer der Fall, aber ich fühle mich manchmal wohler beim Nisten.
Meine Frage lautet: Gibt es außer persönlichen Vorlieben oder Lesbarkeit einen Grund, die Verschachtelung zu reduzieren? Gibt es einen Leistungsunterschied oder etwas anderes, das mir möglicherweise nicht bewusst ist?