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

Qual é a forma mais eficiente para realizar esse problema?

Ao realizar os exercícios complementares e comparar minhas respostas com a do instrutor me veio a questão de qual era a mais eficiente, mas específicamente, qual requereria menos processamento. Abaixo mostro um exemplo das diferenças a que me refiro:

//Primeira questão feita por mim
let contador = 1;
alert(`Valor atual do contador: ${contador}`);
while(contador != 10) {
    contador++;
    alert(`Valor atual do contador: ${contador}`);
}
//Primeira questão com a resolução proposta pelo instrutor
let contador = 1;
while (contador <= 10) {
    console.log(contador);
    contador++;
}

A meu ver, a resolução proposta causa uma soma a mais que não é exposta no console, a que torna desnecessária. Porém com meu código foi necessário adicionar mais uma linha com um alert antes do loop. Enfim, qual é a mais eficiente?

2 respostas
solução!

Em termos de eficiência, a diferença entre os dois códigos é mínima e, na prática, praticamente insignificante. A escolha entre eles muitas vezes depende mais da legibilidade e estilo de programação do que da eficiência pura.

Ambos os códigos fazem a mesma coisa: incrementam uma variável até que ela atinja um determinado valor (no caso, 10) e exibem o valor da variável em cada iteração. A diferença está na forma como o loop é estruturado e como a informação é exibida.

Se estivermos falando de eficiência do ponto de vista de desempenho computacional, a diferença entre usar console.log e alert pode ser relevante em certos contextos. console.log geralmente é mais eficiente do que alert, especialmente em grandes quantidades de iterações, porque alert envolve a interface do usuário e pode ser mais lento.

Agora, se estamos considerando eficiência em termos de quantidade de código, a versão do instrutor é mais concisa e, portanto, pode ser considerada mais eficiente nesse aspecto. Além disso, é uma prática comum usar console.log para depuração e verificar valores durante o desenvolvimento, sem a necessidade de interação do usuário.

Portanto, na escolha entre os dois, considere fatores como legibilidade, manutenção do código e a necessidade de interação com o usuário. Se a interação com o usuário for necessária, alert pode ser a escolha apropriada; caso contrário, console.log é frequentemente preferível em termos de eficiência e prática de programação.

Caso tenha conseguido esclarecer suas dúvidas, fico feliz em ter ajudado. Estou à disposição para qualquer outra questão que possa surgir. Um abraço! Se este post foi útil, por favor, marque como solucionado ✓. Desejo a você excelentes estudos!