Skip to content
Latchkey

O Que É um Build Target? Escolhendo o Ambiente de Saída

Um build target informa à ferramenta de build em qual ambiente a saída deve rodar, para que ela saiba quais recursos usar e quais rebaixar de nível.

O mesmo código-fonte pode compilar em saídas muito diferentes dependendo de onde ele vai rodar. Um build target captura esse destino: uma versão de JavaScript, um runtime como browser ou Node, ou um conjunto de navegadores. O target orienta o quão agressivamente o build transpila e quais recursos ele pode assumir, e fixá-lo é o que mantém a saída de CI consistente.

O que um target controla

  • Qual nível de sintaxe de JavaScript a saída usa.
  • Se deve emitir para browsers, Node ou ambos.
  • Quais APIs o build pode assumir que existem.

Target e transpilação

Um target mais alto, como uma versão recente de JS, significa menos rebaixamento de nível e uma saída menor e mais rápida. Um target mais baixo significa mais transpilação e polyfills para suportar ambientes mais antigos. O target é o botão de ajuste entre saída moderna e amplo suporte.

Target de browser vs target de runtime

Um target de runtime escolhe o comportamento de browser versus Node. Um target de browser restringe a versões específicas de navegadores, geralmente por meio de uma lista de suporte a navegadores. Ambos informam o build, e projetos de frontend frequentemente definem os dois.

Targets de biblioteca vs de aplicação

Aplicações têm como target os ambientes que seus usuários rodam. Bibliotecas geralmente têm como target algo amplo e deixam o rebaixamento final de nível para a aplicação consumidora, para que não forcem um nível específico sobre todos que as instalam.

Build targets em CI/CD

Como o target muda a saída, fixá-lo em uma config commitada mantém o CI reproduzível: o mesmo commit sempre emite para o mesmo ambiente. Um drift de target entre local e CI é uma causa comum de funciona-localmente-falha-em-produção, então o target vive no repositório, não na máquina de um desenvolvedor.

Principais conclusões

  • Um build target define o ambiente e o nível de recursos que a saída deve suportar.
  • Ele é o botão de ajuste entre saída moderna e menor e ampla compatibilidade.
  • Fixar o target em uma config commitada mantém os builds de CI reproduzíveis.

Guias relacionados