Chegamos ao ponto em que já entendemos:

  • por que o Date é problemático
  • como a Temporal API resolve a lógica de datas
  • como a API Intl cuida da exibição

Agora vamos amarrar tudo isso em um conjunto de boas práticas modernas.

🎯 Objetivo da aula

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

  • Evitar bugs clássicos com datas
  • Separar lógica de exibição
  • Escolher o tipo correto de data
  • Escrever código previsível e confiável

1️⃣ Separe lógica de exibição

Essa é a regra mais importante:

Nunca use datas formatadas para lógica.

❌ Errado:

 if (dataFormatada === "21/01/2026") { // lógica } 

✅ Correto:

 
  const data = Temporal.PlainDate.from("2026-01-21");
  if (data.equals(Temporal.PlainDate.from("2026-01-21"))) {
    // lógica
  }

2️⃣ Use o tipo certo para cada problema

Não existe “uma data universal”.

  • Temporal.Instant → tempo absoluto (logs, banco)
  • Temporal.PlainDate → datas sem hora
  • Temporal.PlainTime → horários isolados
  • Temporal.ZonedDateTime → eventos reais com fuso
Escolher o tipo errado gera bugs silenciosos.

3️⃣ Armazene datas de forma neutra

Em bancos de dados e APIs:

  • use UTC
  • use ISO 8601
  • evite datas locais
 
  const agora = Temporal.Now.instant();
  console.log(agora.toString());
  // Saída será algo como: 2026-01-21T17:00:00Z

4️⃣ Sempre seja explícito com fusos

Se o fuso importa, ele deve aparecer no código.

 const evento = Temporal.ZonedDateTime.from( "2026-01-21T14:00[America/Sao_Paulo]" ); 
Fusos implícitos são inimigos da previsibilidade.

5️⃣ Nunca confie em strings ambíguas

❌ Evite:

 new Date("01/02/2026"); // ambíguo 

✅ Prefira:

 Temporal.PlainDate.from("2026-02-01"); 

6️⃣ Cálculos devem ser semânticos

Evite trabalhar com milissegundos.

 
  const inicio = Temporal.PlainDate.from("2026-01-01"); 
  const fim = Temporal.PlainDate.from("2026-01-21");
  const diff = fim.since(inicio);
  console.log(diff.days); // Saída será: 20

O código expressa claramente a intenção.

7️⃣ Use Intl apenas para exibição

Depois de resolver a lógica com Temporal:


  const formatador = new Intl.DateTimeFormat("pt-BR", { dateStyle: "long" });
  console.log(formatador.format(new Date()));
  // Saída será algo como: 21 de janeiro de 2026
Intl mostra — Temporal decide.

8️⃣ Centralize regras de datas

Evite espalhar lógica de datas pelo código.

Crie funções ou módulos específicos:

 
  function criarEvento(dataISO, fuso) 
  { 
    return Temporal.ZonedDateTime.from( `${dataISO}[${fuso}]` );
  } 

9️⃣ Teste datas em fusos diferentes

Sempre que possível:

  • teste em fusos diferentes
  • simule usuários internacionais
  • desconfie de “funciona na minha máquina”

Resumo das boas práticas

  • separe lógica e exibição
  • seja explícito com fusos
  • use tipos corretos
  • prefira Temporal ao Date
  • use Intl apenas para mostrar

Resumo da aula para nunca mais esquecer

  • Datas são complexas por natureza
  • Boas práticas evitam bugs silenciosos
  • Temporal resolve lógica
  • Intl resolve exibição
  • Código claro vence atalhos

Com isso, encerramos o bloco moderno de datas e horários.

Estamos prontos para seguir para o próximo grande capítulo do curso 🚀


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?

As primeiras máquinas de fliperama do mundo a utilizarem moedas, chamadas de Galaxy Game, custavam mais de 20 mil dólares para serem produzidas. Saiba mais sobre elas aqui.


Em 1949 a revista Popular Mechanics fez uma previsão para o futuro, dizendo: "Um dia os computadores pesarão menos do que 1,5 tonelada". E pensar que temos smartphones capazes de realizar milhões de vezes mais operações do que os computadores daquela época.


A empresa Universal City Studios, detentora dos direitos autorais do King Kong, processou a Nintendo logo após o lançamento de Donkey Kong, pois segundo ela, o game violava os seus direitos. Ela venceu o processo e recebeu da Nintendo uma indenização de quase 2 milhões de dólares.


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.


A empresa Take-Two pagou à Infogrames mais de 22 milhões de dólares pelos direitos de Civilization, em novembro de 1994. Ainda sobre este título, Sid Meier, um dos seus fundadores, é o profissional da área dos games mais premiado em todo o mundo.