Até agora, aprendemos a criar elementos dinamicamente e a usar delegação de eventos.

Mas existe uma pergunta importante que todo desenvolvedor precisa fazer:

Como manipular o DOM sem deixar a página lenta?

Nesta aula, vamos entender o impacto das operações no DOM e aprender práticas que melhoram a performance das aplicações.

🎯 Objetivo da aula

Ao final desta aula, você será capaz de:

  • Entender por que o DOM é “caro”
  • Evitar manipulações desnecessárias
  • Reduzir reflows e repaints
  • Escrever código mais eficiente
  • Melhorar a experiência do usuário

Por que o DOM pode ser lento?

O DOM não é apenas JavaScript — ele representa a estrutura visual da página.

Sempre que você:

  • Cria um elemento
  • Insere no DOM
  • Altera estilos
  • Remove elementos

O navegador pode precisar:

  • Recalcular o layout (reflow)
  • Redesenhar a tela (repaint)
Essas operações são mais custosas do que simples cálculos em JavaScript.

Erro comum: manipular o DOM em excesso

Veja este exemplo:

 const lista = document.getElementById("lista");

for (let i = 0; i < 100; i++) {
const li = document.createElement("li");
li.textContent = "Item " + i;
lista.appendChild(li);
}

Funciona, mas cada appendChild toca o DOM.

Boa prática: minimizar acessos ao DOM

Uma estratégia melhor é criar tudo primeiro e inserir de uma vez:

 
  const lista = document.getElementById("lista"); 
  const fragment = document.createDocumentFragment();
  for (let i = 0; i < 100; i++) {
    const li = document.createElement("li");
    li.textContent = "Item " + i;
    fragment.appendChild(li);
  }
  lista.appendChild(fragment);
O DocumentFragment permite montar o conteúdo fora do DOM e inserir tudo de uma vez.

Evite consultas repetidas

Outro erro comum:

 
  for (let i = 0; i < 10; i++) 
    { 
      document.getElementById("status").textContent = i; 
    } 

Melhor:

 
      const status = document.getElementById("status");
      for (let i = 0; i < 10; i++) 
        {
        status.textContent = i;
        }

Prefira classes a estilos inline

Alterar vários estilos inline causa múltiplos repaints:

 
  element.style.color = "red"; element.style.fontSize = "20px"; element.style.margin = "10px"; 

Melhor:

 
    .destaque { color: red; font-size: 20px; margin: 10px; } 
 element.classList.add("destaque"); 

Leitura e escrita no DOM

Misturar leitura e escrita no DOM pode causar problemas de performance:

 
      const altura = element.offsetHeight; 
      element.style.height = altura + 10 + "px"; 

Sempre que possível:

  • Leia tudo primeiro
  • Depois escreva tudo

Delegação de eventos também ajuda

Como vimos na aula anterior:

  • Menos listeners
  • Menos memória
  • Mais performance

Performance no DOM não é só sobre velocidade — é sobre boas decisões.

Código simples e organizado tende a ser mais performático.

Resumo da aula para nunca mais esquecer

  • Manipular o DOM é custoso
  • Evite alterações repetidas
  • Use DocumentFragment quando possível
  • Reduza consultas ao DOM
  • Prefira classes CSS a estilos inline

Na próxima aula, vamos aprender sobre manipulação de classes CSS, fechando esse bloco com chave de ouro.


HARDWARE

Entendendo o seu computador

O que há dentro do meu computador?

Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.

  • Gabinetes

  • Placas-Mãe

  • Processadores

  • Memória

  • Fontes

  • Drives Ópticos

  • Discos Rígidos

  • SSD

  • Placas de Som

  • Placas de Vídeo

Você Sabia?

O título Space Invaders, lançado em 1980, fez tanto sucesso em todo o mundo que as pessoas compravam o console Atari apenas para poderem jogá-lo em casa. Saiba mais sobre este incrível título clicando aqui.


O épico jogo River Raid, do Atari, foi desenhado e boa parte de sua programação foi feita por uma mulher: Carol Shaw, uma excelente programadora e funcionária da Activision em 1982. Saiba mais sobre a história deste incrível jogo, aqui.


O famoso título Final Fantasy, da Square Enix, tem este nome exatamente porque se tratava da última esperança da empresa, que estava à beira da falência quando o lançou. Clique aqui e conheça detalhes dessa história.


O ábaco é o dispositivo de cálculo mais antigo construído e conhecido pelo homem. Suas formas mais primitivas datam de 400 a.C. e eles foram encontrados na China e na Babilônia. Para saber mais sobre a história dos computadores, clique aqui.


Excesso de barulho dentro do seu gabinete, principalmente logo que você o liga, pode ser sintoma de problemas nas ventoinhas, que podem precisar ser limpas ou trocadas. Entre em contato com um técnico de sua confiança e verifique isso o quanto antes.