Quindi sto programmando da alcuni anni e recentemente ho iniziato ad usare ReSharper in più. Una cosa che ReSharper mi suggerisce sempre è di "invertire" se "l'istruzione per ridurre il nesting".
Diciamo che ho questo codice:
foreach (someObject in someObjectList)
{
if(someObject != null)
{
someOtherObject = someObject.SomeProperty;
}
}
E ReSharper suggerirà di farlo:
foreach (someObject in someObjectList)
{
if(someObject == null) continue;
someOtherObject = someObject.SomeProperty;
}
Sembra che ReSharper suggerirà SEMPRE di invertire i FI, indipendentemente da quanto tempo accada. Questo problema è che mi piacerebbe fare il nido in almeno alcune situazioni. Per me sembra più facile leggere e capire cosa sta succedendo in determinati posti. Questo non è sempre il caso, ma a volte mi sento più a mio agio.
La mia domanda è: oltre alle preferenze personali o alla leggibilità, c'è un motivo per ridurre il nesting? C'è una differenza di prestazioni o qualcos'altro di cui potrei non essere a conoscenza?