Posts
Os Benefícios de Usar um Framework de Build
26 de novembro de 2020 • 2 min de leitura
Integração Contínua (CI) e/ou Entrega Contínua (CD) é a norma em projetos de software nos dias de hoje. Existem muitos servidores de build como Azure DevOps, TeamCity, Jenkins e Cruise Control.Net. A maioria desses servidores usa linguagens proprietárias para definir etapas de build. Mas é uma boa ideia codificar suas etapas de build em uma linguagem proprietária?
Algumas aplicações são simples, com poucas etapas de build, outras são mais complexas com muitas etapas de build. Quando você define etapas de build em uma linguagem proprietária, quanto mais complexas as etapas de build (em sofisticação ou em número), mais acoplado você fica a uma plataforma de build. Isso se torna um problema quando você quer mudar de plataforma de build. Por exemplo, você está usando TeamCity da JetBrains em seu datacenter local, mas a empresa decide se mudar para a nuvem. Agora você deve reescrever seus scripts de build porque TeamCity não é suportado na nova plataforma em nuvem.
Em vez de escrever seus scripts de build em uma linguagem proprietária, considere usar um framework de build.
Os frameworks de build têm dois benefícios:
- Permitir portabilidade entre plataformas de build.
- Permitir que você versione seus scripts de build junto com o código da sua aplicação.
A portabilidade entre plataformas oferece a flexibilidade de se mover entre plataformas de build com esforço mínimo. Sempre haverá alguma configuração em uma nova plataforma de build, mas os frameworks de build mantêm o esforço baixo.
Na minha opinião, o maior benefício dos frameworks de build é a capacidade de fazer check-in e versionar seus scripts de build junto com o código da sua aplicação. Ter a opção de extrair código de qualquer ponto no histórico do seu controle de fonte e ter esse código compilado vale bem qualquer desvantagem de um framework de build.
Existem dois frameworks populares no espaço .Net: Cake e Nuke Build. Ambos os frameworks existem há um tempo. Usei Nuke Build e gosto dele. Ouvi coisas ótimas sobre Cake e o encorajo a analisá-lo antes de decidir qual é o melhor framework para seu projeto.
Então, da próxima vez que você estiver criando uma nova definição de build para sua aplicação, considere usar um framework de build e fazer check-in no controle de fonte junto com sua aplicação.
Autor: Chuck Conway é um Engenheiro de IA com quase 30 anos de experiência em engenharia de software. Ele constrói sistemas de IA práticos—pipelines de conteúdo, agentes de infraestrutura e ferramentas que resolvem problemas reais—e compartilha o que está aprendendo ao longo do caminho. Conecte-se com ele nas redes sociais: X (@chuckconway) ou visite-o no YouTube e no SubStack.