Julgue o item que se segue, referente a clean code e à ferr...
Julgue o item que se segue, referente a clean code e à ferramenta SonarQube.
O SonarQube tem uma abordagem embasada no princípio de que o código da base em produção deve ser formatado e revisado para garantir que se usem as interfaces de programação e os recursos de linguagem apropriados.
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Tema Central da Questão: A questão aborda o uso do SonarQube em relação ao conceito de código limpo ou clean code. É importante entender como o SonarQube funciona e qual é o seu objetivo principal na análise de código.
Resumo Teórico:
O SonarQube é uma ferramenta de análise estática de código que ajuda a identificar e corrigir problemas de qualidade no código, como bugs, vulnerabilidades e problemas de manutenção. Ele se concentra em assegurar que o código siga boas práticas de programação, mas não necessariamente na formatação ou no uso das interfaces de programação em si.
O conceito de clean code, por outro lado, refere-se a práticas que tornam o código mais legível, simples e de fácil manutenção. Isso inclui nomeação clara de variáveis, funções pequenas e coesas, e a ausência de código duplicado, entre outros aspectos.
Justificativa para a Alternativa Correta:
A alternativa correta é E - errado. O enunciado afirma que o SonarQube tem como princípio garantir que o código use as interfaces de programação e os recursos de linguagem apropriados. Entretanto, o foco do SonarQube não é garantir o uso das interfaces de programação apropriadas, mas sim monitorar a qualidade do código através da identificação de padrões que possam indicar problemas.
Análise da Alternativa Incorreta:
A afirmação "o SonarQube tem uma abordagem embasada no princípio de que o código da base em produção deve ser formatado e revisado para garantir que se usem as interfaces de programação e os recursos de linguagem apropriados" é equivocada. O SonarQube verifica a conformidade do código com padrões de qualidade e não necessariamente com a formatação ou escolha de interfaces de programação.
Para não cair em pegadinhas, é essencial entender que, enquanto o SonarQube foca na qualidade do código, ele não é responsável por ditar ou garantir o uso de métodos ou interfaces específicas. Ele ajuda a identificar problemas de qualidade, mas a decisão sobre a escolha de interfaces cabe aos desenvolvedores e à arquitetura do sistema.
Gostou do comentário? Deixe sua avaliação aqui embaixo!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Não entendi o erro da afirmativa.
O SonarQube tem como principais objetivos:
- Detecção de falhas e vulnerabilidades de segurança.
- Análise de "code smells" (problemas que podem tornar o código difícil de entender ou manter).
- Medição da cobertura de testes e a cobertura de código.
- Análise de duplicação de código.
- Acompanhamento da complexidade (complexidade ciclomática, por exemplo).
- Verificação da aderência a convenções de codificação.
Acredito que o "erro" venha da ideia de que "não se testa código em produção, ele já deve chegar lá testado/pronto/com qualidade"
but..
JUSTIFICATIVA CEBRASPE - Errado. O SonarQube tem uma abordagem baseada no princípio de que de que o novo código (código adicionado ou modificado recentemente pelo usuário) deve estar em conformidade com os padrões de qualidade do SonarQube (servidor, nuvem). A solução Sonar implementa o clean as you code, avisando sempre que problemas forem detectados no novo código
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo