Bloaters.
Aglomerados de Dados
Às vezes, diferentes partes do código contêm grupos idênticos de variáveis (como parâmetros para conexão com um banco de dados). Esses aglomerados devem ser transformados em suas próprias classes.
Classe Grande
Uma classe contém muitos campos/métodos/linhas de código.
Método Longo
Um método contém linhas de código demais. Em geral, qualquer método com mais de dez linhas deve começar a levantar suspeitas.
Lista de Parâmetros Longa
Mais de três ou quatro parâmetros para um método.
Obsessão por Primitivos
Usam-se primitivos em vez de pequenos objetos para tarefas simples (como moeda, intervalos ou strings especiais para números de telefone), constantes para codificar informações (como USER_ADMIN_ROLE = 1 para usuários com direitos de administrador) e constantes de string como nomes de campos em arrays de dados.