Não Use Ifs Aninhados. Use Guard clause / Early return

0
1575
- Conheça o nosso guia -Carreira em TI: Guia Completo para Construir uma Carreira de Sucesso em TI

Aprenda a como evitar ifs aninhados e melhorar a legibilidade do código através de Guard clause / Early return.

Veja um exemplo com C# a seguir.

Sem Guard clause / Early return

void doSomething() {
    if (isUserActive) {
        if (isUserSubscribed) {
            if (isPaidUser) {
                showUserDashboard();
            } else {
                throw new Exception('Not a paid user');
            }
        } else {
            throw new Exception('User not subscribed');
        }
    } else {
        throw new Exception('User not active');
    }
}

Com Guard clause / Early return

void doSomethingWithGuardClauses() {
    if (!isUserActive) {
        throw new Exception('User not active');
    }

    if (!isUserSubscribed) {
        throw new Exception('User not subscribed');
    }

    if (!isPaidUser) {
        throw new Exception('Not a paid user');
    }

    showUserDashboard();
}
- Conheça o nosso guia -Carreira em TI: Guia Completo para Construir uma Carreira de Sucesso em TI