Код IT
← Каталог

Рекомендации по разработке на C# — Инкапсуляция сложных выражений

Фрагмент из «Рекомендации по разработке на C#»: Инкапсуляция сложных выражений.

C# main.cs
// Плохо
if (member.HidesBaseClassMember && (member.NodeType != NodeType.InstanceInitializer))
{
    // обработка
}

// Хорошо
if (NonConstructorMemberUsesNewKeyword(member))
{
    // обработка
}

private bool NonConstructorMemberUsesNewKeyword(Member member)
{
    return member.HidesBaseClassMember && 
           (member.NodeType != NodeType.InstanceInitializer);
}
// Плохо
if (member.HidesBaseClassMember && (member.NodeType != NodeType.InstanceInitializer))
{
    // обработка
}

// Хорошо
if (NonConstructorMemberUsesNewKeyword(member))
{
    // обработка
}

private bool NonConstructorMemberUsesNewKeyword(Member member)
{
    return member.HidesBaseClassMember && 
           (member.NodeType != NodeType.InstanceInitializer);
}