A resposta de Karl está 100% correta. Não há como garantir a conformidade. No entanto, além das revisões de treinamento e código, considere o uso de ferramentas de análise estática para garantir a conformidade. (Nota: eu disse "além de", pois é possível contorná-las exatamente da mesma maneira que Karl afirmou).
A vantagem de usar ferramentas de análise estática é remover a tediosa análise de código humano, procurando instâncias de "uso múltiplo de IEnumerable" ou qualquer problema de desempenho da semana em que você está olhando (ou, pelo menos, que eu sempre sinto que estou olhando para). Isso permitirá que as revisões e o treinamento do código se concentrem em questões mais "interessantes".
Para C #, especificamente, incluí algumas sugestões abaixo. Conecte-os ao seu ambiente de construção e pronto. Mas, geralmente, não importa qual idioma você esteja usando, há uma ferramenta de análise estática disponível em algum lugar.
Copie / cole diretamente da página da Wikipedia, use a página da wiki para obter as informações e links mais recentes:
https://en.wikipedia.org/wiki/List_of_tools_for_static_code_analysis#.NET
- Plataforma do compilador .NET (Codename Roslyn) - estrutura de compilador de código-fonte aberto para C # e Visual Basic .NET, desenvolvida pela Microsoft .NET. Fornece uma API para analisar e manipular sintaxe.
- CodeIt.Right - combina análise de código estático e refatoração automática às melhores práticas, o que permite a correção automática de erros e violações de código; suporta C # e VB.NET.
- CodeRush - Um plug-in para o Visual Studio que alerta os usuários sobre violações das práticas recomendadas.
- FxCop - Análise estática gratuita para programas Microsoft .NET que compila com o CIL. Autônomo e integrado em algumas edições do Microsoft Visual Studio; pela Microsoft.
- NDepend - simplifica o gerenciamento de uma base de código .NET complexa, analisando e visualizando dependências de código, definindo regras de design, fazendo análises de impacto e comparando diferentes versões do código. Integra-se ao Visual Studio.
- Parasoft dotTEST - Um plug-in de análise estática, teste de unidade e revisão de código para o Visual Studio; trabalha com linguagens para Microsoft .NET Framework e .NET Compact Framework, incluindo C #, VB.NET, ASP.NET e C ++ gerenciado.
- Sonargraph - Suporta C #, Java e C / C ++, com foco em análise de dependência, verificação automatizada de arquitetura, métricas e a capacidade de adicionar métricas personalizadas e verificadores de código.
- StyleCop - Analisa o código fonte do C # para impor um conjunto de regras de estilo e consistência. Pode ser executado de dentro do Microsoft Visual Studio ou integrado a um projeto MSBuild.