O Que É um Entry Point? Onde o Build Começa
Um entry point é o arquivo a partir do qual um bundler começa ao construir o grafo de dependências; tudo que é alcançável a partir dele acaba no build.
Um bundler precisa começar de algum lugar. O entry point é esse arquivo inicial, geralmente a raiz do seu app ou o script da página. A partir dele, o bundler segue os imports para fora a fim de descobrir cada módulo de que o build precisa. Entender os entry points explica por que parte do código acaba no seu bundle e parte não, e por que os apps podem ter mais de um.
Como uma entrada define o build
O bundler trata a entrada como a raiz do grafo. Qualquer módulo importado, direta ou transitivamente, a partir da entrada é incluído. Código que nada alcançável a partir da entrada importa simplesmente nunca é empacotado.
Múltiplos entry points
Um projeto pode declarar várias entradas, por exemplo uma por página ou uma para o app e uma para um painel de admin. Cada entrada produz sua própria saída, e o bundler pode fatorar o código compartilhado em chunks comuns entre elas.
Entrada vs saída
- A entrada é o arquivo de input a partir do qual o build começa.
- A saída é o bundle ou os chunks emitidos.
- Uma entrada pode produzir muitos arquivos de saída via splitting.
Entry points de biblioteca
Para pacotes publicados, a entrada é o que os consumidores importam. Os campos main, module e exports do package.json declaram essas entradas para que as ferramentas escolham o arquivo certo, e é por isso que uma entrada mal configurada pode quebrar uma biblioteca para todo mundo.
Entry points no CI/CD
As entradas configuradas determinam o que o build de CI produz e quantos artifacts são enviados. Adicionar ou remover uma entrada muda o conjunto de saída, então uma verificação de build-output no pipeline pode confirmar que os arquivos esperados foram emitidos antes do deploy.
Principais conclusões
- Um entry point é onde o bundler começa a resolver o grafo de dependências.
- Múltiplas entradas produzem múltiplas saídas com chunks compartilhados entre elas.
- Uma verificação de saída no CI confirma que os artifacts esperados foram emitidos.