A prática de refactoring resulta em uma versão que altera o...

Próximas questões
Com base no mesmo assunto
Q3104128 Engenharia de Software
Acerca de criptografia, de clean code, de refactoring e de JUnit, julgue o item seguinte.
A prática de refactoring resulta em uma versão que altera o comportamento externo do código enquanto melhora aspectos como desempenho, legibilidade e manutenibilidade, promovendo uma melhoria substancial na eficiência do código. 
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Vamos analisar a questão que trata de refactoring e como ele é aplicado no desenvolvimento de software. A prática de refactoring consiste em melhorar o código interno do software sem alterar seu comportamento externo. Ou seja, ao fazer refactoring, o que muda é a estrutura do código para torná-lo mais limpo, legível e mais fácil de manter, mas as funcionalidades que o código oferece não mudam.

No enunciado, é afirmado que o refactoring altera o comportamento externo do código. Isso está incorreto. Portanto, a alternativa correta é E - errado.

Vamos entender mais a fundo os conceitos envolvidos:

  • Refactoring: É um processo principalmente focado em melhorar a legibilidade, manutenibilidade e estrutura do código sem alterar seu comportamento para o usuário final.
  • Comportamento externo: Refere-se a como o software se comporta do ponto de vista do usuário. Isso inclui as funcionalidades que ele oferece e como ele interage com outros sistemas.

A questão corretamente identifica que o objetivo do refactoring é melhorar aspectos como desempenho e manutenibilidade, mas erroneamente menciona a alteração do comportamento externo, o que não acontece.

Em resumo, lembre-se de que refactoring é como organizar uma biblioteca: você arruma os livros nas prateleiras e limpa a poeira, mas não muda o conteúdo dos livros.

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

Errado

Refatoração é o processo de modificar um sistema de software para melhorar a estrutura interna do código sem alterar o seu comportamento externo

Errado. Externo, não!

O conceito fundamental de Refactoring (ou Refatoração) é:

“Alterar a estrutura interna do código, sem alterar seu comportamento externo.”

(Refactoring: Improving the Design of Existing Code - Martin Fowler)

Refatoração Promove:

  • Melhor legibilidade
  • Melhor organização
  • Redução de dívidas técnicas
  • Facilidade de manutenção e testes
  • Eventual melhora em desempenho (como efeito colateral, não como objetivo principal)

OBS: Sem modificar o que o software faz para o usuário final.

Imagine que um método soma faz parte de outro método que faz uma série de outras ações, alem de somar:

public double soma(double a, double b) {

  return a + b;

}

Após a refatoração:

public class Calculadora {

  public double somar(double a, double b) {

    return a + b;

  }

  public double subtrair(double a, double b) {

    return a - b;

  }

  public double multiplicar(double a, double b) {

    return a * b;

  }

  public double dividir(double a, double b) {

    if (b == 0) {

      throw new IllegalArgumentException("Divisão por zero não é permitida.");

    }

    return a / b;

  }

}

errado, não alterar o comportamento externo do código, o comportamento interno

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo