A revisão de código Structural Analysis aplica regras que exploram a
estrutura do código para antipadrões. Antipadrões são problemas estruturais
em que um componente possui um grande número de elementos que dependem dele ou dos
quais ele depende, o que cria código desnecessariamente complexo e de difícil
manutenção.
A lista a seguir mostra as categorias de regra incluídas nessa revisão de código
e descreve as áreas específicas às quais se destinam:
- Breakable: contém regras de análise estrutural para sinalizar objetos
com dependências imediatas excessivas.
- Cyclic Dependencies: contém regras de análise estrutural para sinalizar
dependências cíclicas entre objetos.
- Hub: contém regras de análise estrutural para sinalizar objetos com
dependências e dependentes imediatos excessivos.
É possível modificar as regras fornecidas e criar outras. Por exemplo,
se você desejar assegurar que a integridade da arquitetura de seu aplicativo
seja mantida em todo o processo de desenvolvimento, poderá definir regras para
controle arquitetural. Essas regras serão incluídas na revisão de código Structural Analysis.
A categoria de regra Design Principles contém regras que asseguram que o
código siga os princípios de design da programação orientada a objetos. As regras
nessa categoria incluem os seguintes exemplos:
- Evitar expressões condicionais com mais de 4 operadores
- Evitar aninhamento de mais de 1 classe
- Evitar aninhamento de mais de 1 instrução if
Ao executar a revisão de código Structural Analysis ou as regras de
Design Principles, você pode ver se alguma nova dependência ou alteração
foi inserida na estrutura e corrigir esses problemas logo no início do processo
de desenvolvimento.
Informações Detalhadas sobre uma Regra
Você pode obter informações sobre cada regra, categoria e revisão de código na
janela Preferences. Consulte "Preferências do Java - Página Code Review" para
obter detalhes.
Nota: Você pode executar a revisão de código Structural Analysis no espaço de trabalho, em um conjunto de tarefas ou em um projeto. No entanto, se você executá-la em um único arquivo, nenhum resultado será exibido.