0Pricing
JavaScript Academy · Aula

Introdução à criação de perfis (Node/DevTools) — pequenos hábitos de medição

Crie perfis em pequenos passos: meça com console.time/timeEnd e temporizadores simples, encontre o código quente, altere uma coisa e meça novamente

Introdução à criação de perfis (Node/DevTools) — pequenos hábitos de medição é uma aula grátis de JavaScript Academy no CoddyKit. Esta é a aula 3 de 3. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de JavaScript Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de JavaScript Academy inclui 3 aulas no total.

Por que analisar o desempenho

Objetivo: medir → alterar → medir novamente.

  • Use console.time/timeEnd para medições rápidas
  • Use uma pequena função auxiliar now() para medições manuais
  • Concentre-se apenas no código mais executado
  • Faça uma alteração de cada vez
Introdução à criação de perfis (Node/DevTools) — pequenos hábitos de medição — ilustração 1

Demonstração de console.time

console.time exibe quanto tempo o bloco identificado levou. É um ótimo primeiro passo.

// Measure a small loop with console.time/timeEnd
console.time("sum");
let s = 0;
for (let i = 0; i < 100000; i = i + 1) {
  s = s + i;
}
console.timeEnd("sum");
console.log("sum value:", s);
Introdução à criação de perfis (Node/DevTools) — pequenos hábitos de medição — ilustração 2

Função auxiliar de medição manual

A medição manual ajuda você a envolver qualquer função e comparar execuções com a mesma entrada.

// A tiny now() helper that works in many runtimes
const now = (typeof performance !== "undefined" && performance.now)
  ? function () { return performance.now(); }
  : function () { return Date.now(); };

// Time a function manually
function timeFn(label, fn) {
  const t1 = now();
  const out = fn();
  const t2 = now();
  console.log(label + " ms:", (t2 - t1));
  return out;
}

timeFn("small work", function () {
  let x = 0;
  for (let i = 0; i < 50000; i = i + 1) { x = x + i; }
  return x;
});
Introdução à criação de perfis (Node/DevTools) — pequenos hábitos de medição — ilustração 3

Encontre o código mais executado

Acompanhe chamadas e time para descobrir onde o aplicativo realiza mais trabalho; otimize primeiro a função mais executada.

// Count calls and total time to find hot spots
const metrics = { calls: 0, totalMs: 0 };

function hotWork(n) {
  const t1 = now();
  let sum = 0;
  for (let i = 0; i < n; i = i + 1) {
    sum = sum + (i % 3);
  }
  const t2 = now();
  metrics.calls = metrics.calls + 1;
  metrics.totalMs = metrics.totalMs + (t2 - t1);
  return sum;
}

// Simulate usage
for (let k = 0; k < 5; k = k + 1) {
  hotWork(80000);
}
console.log("calls:", metrics.calls, "avg ms:", metrics.totalMs / metrics.calls);
Introdução à criação de perfis (Node/DevTools) — pequenos hábitos de medição — ilustração 4

Medição antes e depois

Faça uma medição antes e depois de uma alteração. Mantenha a mesma entrada e compare apenas os números.

// Compare two approaches with the same input
const hay = [];
for (let i = 0; i < 2000; i = i + 1) { hay.push(String(i)); }

const needles = [];
for (let i = 0; i < 1000; i = i + 1) { needles.push(String(i * 2)); }

function slowIncludes() {
  let count = 0;
  for (const n of needles) {
    if (hay.includes(n)) { count = count + 1; }
  }
  return count;
}

function fastSet() {
  const set = new Set(hay);
  let count = 0;
  for (const n of needles) {
    if (set.has(n)) { count = count + 1; }
  }
  return count;
}

const c1 = timeFn("includes run", slowIncludes);
const c2 = timeFn("set.has run", fastSet);
console.log("counts:", c1, c2);
Introdução à criação de perfis (Node/DevTools) — pequenos hábitos de medição — ilustração 5

Boas práticas de medição

Dicas:

  • Use as mesmas entradas em todas as execuções.
  • Aqueça uma vez e depois faça a medição.
  • Reduza os registros durante a medição.
  • Altere uma coisa e meça novamente.
  • DevTools/Node têm ferramentas de gravação; comece com um console.time simples.
Introdução à criação de perfis (Node/DevTools) — pequenos hábitos de medição — ilustração 6

Questionário sobre noções básicas de console.time

Verificação rápida: ferramenta de medição rápida.

Introdução à criação de perfis (Node/DevTools) — pequenos hábitos de medição — ilustração 7

Recapitulação

Recapitulação: comece com console.time e uma pequena função auxiliar now(). Encontre o código mais executado, faça uma alteração simples e meça novamente usando as mesmas entradas.

Introdução à criação de perfis (Node/DevTools) — pequenos hábitos de medição — ilustração 8

Perguntas Frequentes

A aula “Introdução à criação de perfis (Node/DevTools) — pequenos hábitos de medição” é grátis?

Sim — o texto completo de “Introdução à criação de perfis (Node/DevTools) — pequenos hábitos de medição” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de JavaScript Academy, atualize para CoddyKit PRO. O curso de JavaScript Academy inclui 3 aulas no total.

O que vou aprender em “Introdução à criação de perfis (Node/DevTools) — pequenos hábitos de medição”?

Crie perfis em pequenos passos: meça com console.time/timeEnd e temporizadores simples, encontre o código quente, altere uma coisa e meça novamente Você pratica JavaScript Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar JavaScript Academy?

Nenhuma experiência prévia é necessária. JavaScript Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 3.

Quanto tempo leva a aula “Introdução à criação de perfis (Node/DevTools) — pequenos hábitos de medição”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de JavaScript Academy?

Sim. Cada aula de JavaScript Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Fundamentos de Big-O, caminhos quentes e frios (ganhos para iniciantes)
  2. Evitando vazamentos — closures, temporizadores e referências
  3. Introdução à criação de perfis (Node/DevTools) — pequenos hábitos de medição
← Voltar para JavaScript Academy