DevGuideTK
← Trilha Backend

Dependências e pacotes

Versionamento semântico, arquivos de trava e o risco de segurança das dependências transitivas.

Dependências são bibliotecas de terceiros que o projeto usa. O gerenciador de pacotes (npm, pip, Go modules, Maven, NuGet) baixa cada uma, na versão certa, junto com as dependências dela.

A maior parte do código que roda em produção não foi escrita pela equipe. Cada pacote é uma porta de entrada para defeitos, vulnerabilidades e até código malicioso.

  • Uma dependência direta traz dezenas de outras, indiretas.
  • O versionamento semântico diz o que uma atualização promete quebrar ou não.
  • O arquivo de trava garante que todos instalem exatamente as mesmas versões.
  • Scripts de instalação executam código de terceiros na sua máquina e no CI.
  • Atualizações pequenas e frequentes são mais seguras que grandes e raras.