Press "Enter" to skip to content

.Net – ferramentas e alternativas

Olá, tudo bem?

Avisando que o artigo não é técnico. Só quero compartilhar alguns pensamentos e descobertas de ferramentas que podem ajudar você e sua equipe.

Antes de começar quero falar que acho genial como a Microsoft te deixa confortável com as ferramentas que ela desenvolve. O que quero dizer é que por padrão não precisamos “perder tempo” escolhendo ferramentas. Usamos o Visual Studio, ai o nosso framework de teste vai ser o MSTests. Build? Bom coloca lá o TFS (acho que mudou de nome/sigla mas vou continuar usando TFS aqui) e já podemos configurar builds, controlamos nossos fontes, e por aí vai :).

Isso tem um lado muito bom. Agilizamos nossas escolhas e temos ótimas ferramentas. Porém tem um lado que não gosto muito. Deixamos de conhecer outras ferramentas. E talvez podemos reduzir custos e ter os mesmos resultados ou até melhores utilizando algumas ferramentas alternativas.

Novamente não quero falar mal do Visual Studio e seus agregados. Só compartilhar duas experiências que trouxeram ótimos resultados :).

 

Enfim… o que era utilizado do TFS? Build e o controle de fontes.

Nesse cenário o custo do TFS não faz sentido. E algumas alternativas apareceram :).

Falando em controle de fontes decidimos migrar do TFS para Git. Poderia utilizar o Git no TFS? Sim. Mas ai entra novamente a questão do custo. O próximo passo foi olhar para alternativas e ai encontramos o ótimo Gitlab.

O Gitlab é uma ferramenta incrível. Se você usa ou já usou o Github vai estar em casa :). Levando em conta custo e o desejo de instalar localmente um servidor o Gitlab foi a escolha certa. A versão community atende todos os requisitos, é de fácil instalação e manutenção.

A migração de TFS para GIT é simples. Se precisar fazer o git-tfs vai te ajudar :). Migramos anos de histórico de código fonte, branches, tudo funcionando perfeitamente.

Márcio mas o GIT é melhor que o controle de fonte do TFS? Eu acho!  Mas não vou entrar nessa briga aqui :D. Faça testes, entenda as diferenças e as mudanças na forma de trabalhar. Se quer uma opinião moderada sobre o assunto eu recomendo dois artigos do Igor Abade.

Igor Abade – Oito razões para preferir o TFVC ao invés do GIT.
Igor Abade – Oito razões para preferir o GIT ao invés do TFVC.

Ok problema do controle de fontes resolvido. Agora o que fazemos com o build? Ai é hora de outra ferramenta dar um show!!! Estou falando do TeamCity da JetBrains.

Nunca gostei da forma de criar templates de build no TFS. O editor é pesado e confuso. Sei que tem um template novo agora mas nunca utilizei. O nível de controle e detalhes que temos hoje dos nossos builds são muito superiores. Sem falar na facilidade e flexibilidade na criação dos templates de build \o/.

Mais uma boa notícia. A versão community pode te atender perfeitamente ;). No meu caso atende tranquilo!

Certo… até aqui eu eliminei o uso que fazia do TFS. Controle de fonte foi para o Gitlab. Builds foram para o TeamCity. O SQL Server foi trocado pelo PostgreSQL. O Window Server pelo CentOS. Atualizar o Gitlab ou TeamCity é tão simples e rápido que você não faz ideia :).

Algo ruim? Não diria que ruim, mas para sair da escolha padrão foi necessário fazer pesquisas. Aprender a utilizar outras ferramentas e treinar a equipe. Porém nesse caso o resultado que temos agora, ao meu ver, são superiores.

Não estou falando para você abandonar o TFS. Longe disso. No nosso caso, na verdade em todas as empresa que trabalhei, o TFS foi subutilizado. E isso não é culpa do TFS.

O que quero passar aqui é que existem alternativas. Existem ótimas ferramentas no mercado que as vezes não prestamos atenção por estarmos no modo automático. Talvez no seu cenário faça sentido pesquisar algumas alternativas assim como nós fizemos :).

Bom acho que é isso :). Gitlab e TeamCity são ferramentas para ficar no seu radar!!!

Abraços.

 

 

 

  • E o .NET Core veio para aumentar ainda mais a lista, tenho o pipeline GitHub => Travis (+ Docker) => Heroku e tudo funciona como em qualquer outra linguagem/plataforma.