O segredo mágico do Code Analysis
1 de junho de 2011Quantos de vocês desenvolvedores já pensaram em definir padrões de codificação no projeto para facilitar a reutilização e principalmente a manutenção? Algumas empresas ainda investem na alocação de profissionais com o papel de “Code Review” que acaba sendo impossível validar o código fonte de um grande número de pessoas além de tornar o processo altamente “burocrático” fazendo justamente o que não queremos em nossos projetos. Se o principio é determinar alguns critérios padrões no time de desenvolvimento e disseminar então nós conseguimos fazer isso com a ferramenta de Code Analysis.
A ferramenta de Code Analysis ou analise estática de código foi introduzida no Visual Studio 2005 e permanece presente até hoje. Sua origem foi baseada em outra ferramenta interna da Microsoft chamada de fxcop que foi adaptada para integrar totalmente com o Visual Studio e com o Team Foundation Server. Dessa união do lado cliente e servidor que surgiu o grande efeito mágico na validação do seu código fonte. Como o Team Foundation Server (TFS) oferece a possibilidade de configurar politicas de Checkin então nos definimos esses padrões na configuração do projeto e disseminamos essa politica para todos.
Ao tentar fazer um Checkin qualquer desenvolvedor terá que garantir que o seu código fonte está passando pelos critérios de Code Analysis definidos e com isso ele só vai subir o código fonte para o repositório se atingir os critérios do projeto. É uma forma natural e ágil de automaticamente ter uma ferramenta que faz o papel de uma pessoa olhando cada código fonte submetido e checando se as nomenclaturas estão nos padrões, se foi implementado globalização e demais regras disponíveis.
Indo em propriedades do projeto você vai encontrar as configurações das regras para uso no Code Analysis como o Microsoft.Naming que define padrões de nomenclatura. Você pode configurar as regras por projetos sempre avaliando cada necessidade. Não é em todos os projetos que vai precisar de todas as regras. A ideia é ter customizações conforme cada necessidade.
Após definir as regras que deseja utilizar basta salvar e ir com o botão direito do mouse no projeto e escolher a opção Run Code Analysis. Para executar ele exige que seu projeto esteja pelo menos compilando e logo depois entra em ação validando as regras. Veja um exemplo de erro encontrato na figura abaixo.
Observando o erro você vai ver que ele está verificando o padrão de nomenclatura utilizado na codificação. A primeira vez que vi essa ferramenta em funcionamento eu fiquei arrepiado, pois o que ela faz é fantástico e poupa muito trabalho nosso de validação. Isso representa um enorme retorno ao projeto permitindo justamente alcançar uma maturidade na padronização. Imagina isso no dia a dia com varias pessoas trabalhando no mesmo código fonte. O próximo passo é criar uma politica no Team Foundation Server para fazer essa mesma validação durante o Checkin. O processo de configuração é o mesmo só que agora as configurações da regra serão sincronizadas com as do servidor. Isso facilita também para não ter que configurar em cada Visual Studio.
Até a próxima!!
[],
Ramon Durães
MVP, Visual Studio ALM