Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] qual a necessidade de uma nova função ?

Durante o desenvolvimento do jogo freeway se encontra a seguinte função passouTodaTela

escrita desta maneira :

function voltaPosicaoInicialDoCarro(){
    for(let i = 0; i < imagemCarros.length; i = i + 1){
        if(passouTodaATela(xCarros[i])){
                xCarros[i] = 600;
        }
    }
}

function passouTodaATela(xCarro){
    return xCarro < - 50;
}

Porém qual a necessidade de criar uma nova função ? Sendo o próprio valor de xCarro não atribuido a valor nenhum , e o mesmo não esta em plural como na variavel ...

Atualmente meu código esta escrito da seguinte forma :

function posicaoInicialDoCarro(){
  for(let i = 0 ; i< imagemCarros.length ; i = i + 1){
  if(xCarros[i] < -45){
    xCarros[i] = 600
    }
   }
  }

Onde creio ser mais fácil a visibilidade , menos linhas e o mesmo funcionamento para tal . Sendo assim essa função passouTodaTela facilita a leitura ou funcionamento do código e como ? Obrigado desde já !

1 resposta
solução!

Oi, Gustavo

2 motivos:

  • Fins didático

  • Fica mais fácil a manutenção

É bem mais fácil saber a finalidade do "if" com uma função

Pense em um projeto feito por outra pessoal em que você tenha que dar manutenção


// aqui está explicito o que está sendo testado
if( passouTodaATela(xCarros[i]) )

// neste, tem que parar e analisar o que está acontecendo
if( xCarros[i] < -50 )    

Quanto ao nome do parâmetro "xCarro"

Pode-se usar qualquer nome. Ex:


function passouTodaATela( xValorCarro ){
    return xValorCarro < - 50;
}