É ruim usar retorno no início de uma função para evitar trabalhos desnecessários? [fechadas]

Digamos que temos uma função foo () e uma barra de bool. O trabalho realizado não serve para nada se bar for falso. Qual é a maneira mais adequada de escrever foo ()?

1

foo() {
  if(!bar)
    return;
  doWork();
}

2

foo() {
  if(bar)
    doWork();
}

A opção 1 tem a vantagem estética de que doWork () (ou seja, o restante da função) não é recuado, mas a desvantagem de que, se você não olhar para a declaração de retorno antecipado, pode assumir que doWork () é chamado sempre você chama foo ().

Em geral, é uma má prática codificar no estilo 1 ou deve ser uma preferência pessoal?

questionAnswers(5)

yourAnswerToTheQuestion