Filtrar


Questões por página:
Refatorações (refactorings) são transformações de código que melhoram a manutenibilidade de um software, sem afetar o seu funcionamento.
Adaptado de VALENTE, Marco Túlio. Engenharia de software moderna: princípios e práticas para desenvolvimento de software com produtividade. Rio de Janeiro, 2020.

Considere a situação na qual, apesar de estar implementado em uma classe A, um método f possui mais dependências para elementos de uma classe B. Isso provoca uma diminuição da coesão da classe A e um aumento no acoplamento entre A e B.
A refatoração, com maior potencial para melhorar a coesão e acoplamento do sistema na situação acima, é 
O Test-Driven Development (TDD) é uma prática de Extreme Programming (XP) que integra o desenvolvimento com a qualidade de software, seguindo o ciclo rigoroso de Red, Green, Refactor.
Assinale a opção que indica a principal atividade realizada na fase Refactor do TDD e o seu objetivo primário em relação à qualidade do código.
No IFCE, a equipe de desenvolvimento identificou, por meio do SonarQube, que um módulo do sistema acadêmico apresenta alta complexidade ciclomática, duplicação de código e métodos extensos com múltiplas responsabilidades. O analista de tecnologia da informação foi designado para propor uma ação alinhada aos princípios de Clean Code e às práticas de análise estática. Considerando esse cenário, assinale a alternativa que apresenta a melhor conduta diante da situação narrada.

Code Smells são indicadores de código de baixa qualidade, isto é, código difícil de manter, entender, modificar ou testar (Valente, 2020). Avalie o trecho de código a seguir (em linguagem JAVA). 


Imagem associada para resolução da questão


Assinale a alternativa que representa o code smell melhor caracterizado no trecho de código. 

Durante a revisão de código do módulo de cálculo de rotas e planos de voo de aeronaves, um engenheiro de software percebeu que a classe GerenciadorVoo possuía mais de 5.000 linhas de código, realizando desde a leitura de arquivos de configuração até a impressão de relatórios e conexão direta com o banco de dados de radares.
O cenário descrito apresenta sérios problemas relacionados aos conceitos fundamentais de orientação a objetos e engenharia de software estrutural.
Assinale a opção que identifica o diagnóstico técnico dessa classe e a recomendação de boas práticas de projeto aplicável.