Dicas do Bob
As dicas do Bob detectam problemas de qualidade de código em tempo real com sugestões de refatoração impulsionadas por IA para funções complexas. Reduza a dívida técnica enquanto programa.
Por que usar as dicas do Bob?
- Análise de código em tempo real: Detecta automaticamente problemas de qualidade enquanto você escreve código, sem varreduras manuais.
- Detectar problemas de qualidade cedo: Identifica funções problemáticas durante o desenvolvimento, antes da revisão de código.
- Reduzir a dívida técnica: Trate problemas de complexidade e manutenibilidade à medida que surgem.
- Melhorar a legibilidade do código: Receba sugestões específicas para simplificar lógica complexa.
- Melhorar a testabilidade: Reduza lógica profundamente aninhada e ramificações excessivas que dificultam os testes.
Como funciona
As dicas do Bob realizam análise estática contínua de todos os arquivos abertos no seu editor, calculando métricas de qualidade de código no nível da função:
Métricas analisadas:
- Complexidade ciclomática: Mede o número de caminhos independentes no seu código. Um valor de 10 ou mais é considerado alta complexidade.
- Índice de manutenibilidade: Avalia quão fácil é ler, testar e estender seu código. Um valor de 70 ou menos é considerado baixa manutenibilidade.
Detecção automática:
Quando uma função ultrapassa os limites de qualidade, o Bob automaticamente:
- Marca a função com um sublinhado roxo no seu editor.
- Adiciona o resultado ao painel Bob Findings.
- Gera sugestões de refatoração impulsionadas por IA.
As dicas do Bob rodam continuamente em segundo plano sem exigir varreduras manuais ou configurações. A análise ocorre automaticamente enquanto você escreve e modifica código.
O que as dicas do Bob detectam
As dicas do Bob visam especificamente duas categorias de problemas de qualidade de código:
Alta complexidade ciclomática
Funções com lógica profundamente aninhada ou ramificações excessivas:
- Várias instruções if/else aninhadas.
- Instruções switch complexas com muitos casos.
- Loops profundamente aninhados.
- Lógica condicional excessiva.
Esses padrões tornam o código difícil de entender, testar e manter.
Baixa manutenibilidade
Funções difíceis de ler, testar ou estender:
- Funções longas com muitas responsabilidades.
- Separação deficiente de preocupações.
- Lógica complexa difícil de seguir.
- Código que se beneficiaria de decomposição.
Ver e corrigir resultados
No editor
Quando o Bob identifica um problema de qualidade:
- A função problemática aparece com um sublinhado roxo no seu editor.
- Passe o cursor sobre o sublinhado para ver um tooltip com:
- O problema de qualidade específico detectado.
- Sugestões de refatoração impulsionadas por IA.
- Opções para discutir o problema com o Bob.
Usando o painel Bob Findings
Todos os resultados dos seus arquivos abertos são agregados no painel Bob Findings:
- Veja todos os problemas de qualidade em um local centralizado.
- Navegue entre resultados de múltiplos arquivos.
- Acompanhe quais problemas você abordou.
- Faça referência a resultados no chat usando '@problems'. Para mais informações, consulte menções de contexto.
Corrigir com o Bob
Colabore com o Bob para refatorar seu código:
Passe o cursor sobre o sublinhado roxo no seu editor.
Clique em Corrigir com Bob no tooltip.
O Bob abre uma conversa de chat com contexto sobre o problema.
Discuta a abordagem de refatoração e implemente a solução juntos.
Use esta opção quando quiser:
- Entender o problema com mais detalhes.
- Explorar diferentes abordagens de refatoração.
- Planejar uma estratégia de refatoração mais complexa.
- Aprender as melhores práticas para situações similares.
Configurar as dicas do Bob
Ativar ou desativar a funcionalidade
Clique no botão Bob - Configurações no canto inferior direito do IBM Bob.
Clique na aba Bob findings.
Ative ou desative as Dicas do Bob.
Quando desativado, o Bob para de analisar arquivos e remove os resultados existentes do editor e do painel Bob Findings.
Menções de contexto
Referencie elementos específicos do seu projeto diretamente em conversas Bob usando menções @ para assistência precisa e consciente do contexto.
Slash commands
Cria slash commands personalizados para automatizar tarefas repetitivas, executar comandos integrados e expandir a funcionalidade do Bob com simples ficheiros markdown.