Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Não era pra simplicar código?

Nossa! Fiquei super confusa com a solução dada em aula dafunction voltaposicaoInicialDoCarro(). Porque devemos transformar um função em duas? Não poderia ser:

function voltaposicaoInicialDoCarro(){
for(let i = 0; i < xCarros.length; i++){
        if(xCarros[i] < -60){
            xCarros[i] = 600;
          }
     } 
 }

Gostaria de entender o raciocíonio do professor. Não consegui. Porque temos que abstrair para outra função?

5 respostas

Boa noite, tudo bem?

Devemos dividir uma função em duas (refatorar), por vários motivos. Alguns deles são:

  • para ficar mais fácil de entender o código
  • para poder reutilizar alguma função em outra parte..

Imagina que você criou uma hyper mega blaster fckig função/arquivo e precisa entender esse código ou até mesmo corrigir um bug. Se tiver tudo separado é bem mais fácil de você mecher nele.

Um exemplo que estou lidando exatamente agora, é acerca de um arquivo de umas 2600 linhas que eu preciso corrigir alguns bugs. Pra resolver isso, primeiro eu to dividindo os pedaços de código, e pra facilitar o meu trabalho eu vou até mesmo dividir esse código em alguns arquivos.

Assim..., é claro que na aula é só um exemplo pequeno, mas nesse mundo da programação, o quanto mais simplificado/dividido/conciso e facil de entender o seu código, é melhor.

Espero ter ajudado, bons estudos!

Abrãao , faz total sentido. falando assim , vejo q há razão para até detalhes que parecem pequenos demais. obrigada!

para mim q sou iniciante , é difícil pensar em tantos detalhes , mas eu chego lá!

solução!

É bom se atentar às boas práticas desde o início. Não precisa se desesperar acerca disso, mas sempre que o professor falar sobre "boas práticas" e "convenções", é muito interessante prestar atenção.

Claro, quanto mais organizado melhor, e isso inclui refatorar...mas para esse caso, preferi manter o if dentro da mesma função.