Oi Wadih, tudo bem?
Obrigado pela paciência em aguardar uma resposta!
Muito interessante sua observação. Realmente, escrevendo das duas formas o código irá funcionar adequadamente, então sinta-se à vontade para escolher a maneira que mais te interessa. Contudo lembre-se que ao entregarmos o código para outra pessoa é importante que ela entenda todas as informações contidas nele.
Dividir as responsabilidades em várias funções traz mais simplicidade e legibilidade para o código. Exemplo:
//códigos dos carros
let xCarros = [600,600, 600, 600, 600, 600];
let yCarros = [40, 96, 150, 210, 270, 318];
let velocidadeCarros = [2, 4.3, 3.2, 5, 4.1, 2.3];
let comprimentoCarro = 50;
let alturaCarro = 40;
function mostraCarro(){
for(let i = 0; i < imagemCarros.length;i++){
image(imagemCarros[i], xCarros[i], yCarros[i], comprimentoCarro, alturaCarro);
}
}
function movimentaCarro(){
for(let i = 0; i<imagemCarros.length; i++){
xCarros[i] -= velocidadeCarros[i];
}
}
function voltaPosicaoInicialDoCarro(){
for( let i = 0; i<imagemCarros.length; i++){
if (passouTodaTela(xCarros[i])){
xCarros[i] = 600;
}
}
}
function passouTodaTela(xCarros){
return xCarros <-50;
}
Ao analisar o código acima, é possível perceber que cada função atua de maneira independente em uma das especificidades relacionadas as imagens dos carros, e que por conta disso, as informações apresentadas podem ser lidas com mais clareza.
Recomendo um artigo que explica a importância do design de código no cotidiano da pessoa programadora, acredito que ele possa esclarecer ainda mais estas questões.
Espero ter ajudado. Caso tenha dúvidas, estarei à disposição para te auxiliar!
Sucesso e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado! ✓.