DEV Community

Leandro Torres
Leandro Torres

Posted on

if-else & early return

Olá Devs! 👩‍💻👨‍💻

A legibilidade e compreensão de um código são aspectos muito importantes, utilizando boas práticas você consegue ter um código melhor e mais fácil de ser mantido.

Jeff Bay publicou no seu livro chamado Thought Works Anthology, um conjunto de boas práticas chamado "Object Calisthenics".

Nesse conjunto ele aborda alguns pontos e um deles é "Don’t Use The ELSE Keyword (Não use a palavra-chave ELSE)". Esse conceito reforça que você deve evitar ao máximo a utilização de ELSE. Existem algumas formas de adotarmos isso, mas vou focar em dois caminhos relativamente tranquilos de seguir.

Peguei uma tabela de temperatura corporal na Web e fiz esse método, vamos seguir com ele como base

public string VerificarTemperaturaCorporal(double temperatura)
{
    string retorno = "";
    if (temperatura >= 36 && temperatura <= 37.5)
    {
        retorno = "Normal";
    }
    else if (temperatura >= 37.6 && temperatura <= 39.5)
    {
        retorno = "Febre";
    }
    else if (temperatura >= 39.6 && temperatura < 41)
    {
        retorno = "Febre alta";
    }
    else if (temperatura >= 41)
    {
        retorno = "Hipertemia";
    }
    else
    {
        retorno = "Hipotermia";
    }

    return retorno;
}
Enter fullscreen mode Exit fullscreen mode

Utilize somente o IF

public string VerificarTemperaturaCorporalv2(double temperatura)
{
    string retorno = "Hipotermia";

    if (temperatura >= 36 && temperatura <= 37.5) retorno = "Normal";

    if (temperatura >= 37.6 && temperatura <= 39.5) retorno = "Febre";

    if (temperatura >= 39.6 && temperatura < 41) retorno = "Febre alta";

    if (temperatura >= 41) retorno = "Hipertemia";

    return retorno;
}
Enter fullscreen mode Exit fullscreen mode

early return
O que é o early return? É um conceito que consiste em interromper a execução do método assim que a condição for atendida

public string VerificarTemperaturaCorporalv3(double temperatura)
{
    if (temperatura >= 36 && temperatura <= 37.5) return "Normal";

    if (temperatura >= 37.6 && temperatura <= 39.5) return "Febre";

    if (temperatura >= 39.6 && temperatura < 41) return "Febre alta";

    if (temperatura >= 41) return "Hipertemia";

    return "Hipotermia";
}
Enter fullscreen mode Exit fullscreen mode

Claro que existem outras formas de melhorarmos esses códigos, me diga, como você faria para tornar ele ainda melhor?


us Now you can support me by buying a coffee
pt Agora você pode apoiar comprando um café para mim
☕😊👇

Buy Me A Coffee

Até a próxima! 👊

Top comments (0)