При использовании ReSharper в последнее время предлагается уменьшить вложенность в определенных местах путем инверсии if
условий и использования операторов continue
.
вложенные условные обозначения:
foreach(....)
{
if(SomeCondition)
{
//do some things
if(SomeOtherNestedCondition)
{
//do some further things
}
}
}
операторы continue:
foreach(....)
{
if(!SomeCondition) continue;
//do some things
if(!SomeOtherNestedCondition) continue;
//do some further things
}
Я понимаю некоторую логику того, почему вы хотите уменьшить вложенность для проблем с производительностью и памятью, а также то, как два отрывка приравниваются друг к другу, однако из моего фона разработки перед примером проще следовать при чтении код.
Какой подход вы предпочитаете и почему? Используете ли вы continue
для вложенных ifs в свой ежедневный код?