Questões de Refatoração (Engenharia de Software) Página 5

Limpar Busca
Refactoring é o processo que
  • A implementa todas as funcionalidades da camada de model para depois implementar as camadas de controller e de viewer, nos casos em que a arquitetura M V C é utilizada.
  • B efetua mudanças em um código existente e funcional sem alterar seu comportamento externo, com o objetivo de aprimorar a estrutura interna do código.
  • C inclui funcionalidades extras no código, com o intuito de aprimorá-lo (rich source-code).
  • D aprimora a extração e o refinamento iterativo dos requisitos do produto ainda na fase de planejamento do software, sendo considerado um valor na X P (extreme programming).
  • E estabelece os métodos, um após o outro, para depois definir as classes e suas abstrações e implementar as interfaces.

A IDE NetBeans possui diversas funções de refatoração do código (refactoring). Esses recursos têm o objetivo de

  • A migrar o código desenvolvido para uma arquitetura específica para outra arquitetura suportada pela linguagem.
  • B manter o histórico de alterações realizadas no código, permitindo que sejam revertidas caso necessário.
  • C testar o funcionamento do código, evitando que a implantação de novas funcionalidades reintroduza erros já corrigidos.
  • D evitar erros de sintaxe durante a digitação do código, oferecendo autocomplemento de palavras reservadas e nomes de classes à medida que são digitadas.
  • E modificar a estrutura do código sem alterar o seu comportamento.

Considere que nos projetos do CREMESP baseados em XP pratica-se a propriedade coletiva de código, de forma que todos os desenvolvedores podem fazer alterações e refatoração de qualquer parte do código a qualquer momento. Para isso, é necessário que também haja

  • A padrões de codificação.
  • B time-box de 40 horas.
  • C testes apenas depois da codificação.
  • D releases grandes.
  • E integração das funcionalidades, mesmo com erros.

Considere a figura abaixo. 

        Imagem relacionada à questão do Questões Estratégicas

É correto afirmar que 

  • A estão sendo representados os 3 processos básicos da metodologia FDD.
  • B os testes estão sendo realizados com o JUnit e o Netbeans.
  • C são etapas do FDD, que tem em comum com o XP o fato de que o desenvolvedor é o único responsável pelo código que ele desenvolve.
  • D refatorar é uma prática comum em XP e também utilizada no TDD.
  • E estas etapas são utilizadas quando se deseja assegurar que um código sempre lance uma exceção.

A técnica de refactoring

  • A resulta em melhoramento do código, pois promove, a cada iteração, uma limpeza no código-fonte e alteração semântica da lógica.
  • B apresenta a desvantagem de exigir uma nova alteração no código existente a cada novo requisito criado, mesmo na parte do código que tenha relação com esse requisito.
  • C é usada para aumentar a complexidade do código a cada iteração, com o intuito de garantir e aumentar a segurança do código.
  • D tem o objetivo de permitir grandes alterações no código a cada iteração no sentido de melhorar a qualidade do código.
  • E permite a reestruturação de códigos de maneira disciplinada e compatível com os métodos ágeis e é uma prática fundamental da XP (eXtreme Programming).