Executando verificação de segurança...
Em resposta a [Não disponível]
2

Early returns podem de fato simplificar o código elimando estruturas aninhadas, tornando a fonte mais legível e fácil de entender, em um primeiro olhar, é especialmente verdade para exemplos simples como este.

Mas para funções complexas essa abordagem pode tornar mais díficil acompanhar o fluxo de controle do programa e entneder o que o código faz. É particularmente verdade para funções que tem diversas condições saidas, que envolvem diferentes ações de 'limpeza' e que cada condição depende de lógica complexa. Como em tudo em engenharia de software não existe bala de prata, apenas trade-offs.

Carregando publicação patrocinada...
2

Realmente, mas usando return early (tbm conhecido como short circuit), geralmente quando ele começa a complicar mais do que ajudar tende a ser porque o método em que está sendo usado está muito grande/complexo e é um indicativo de que precisa refatorar aquele método, já que está com muita responsabilidade.
Claro, sempre há exceções, por isso eu sempre tento aplicar essa prática, e se ver que não ficou bom, vejo se precisa de refatoração, senão volta pro if-else mesmo, mas na grande maioria das vezes encaixa muito bem.