Geral
Gerência e Qualidade de Software
Semana 4
0

Questão

Em um sistema de software, o desenvolvedor está buscando melhorar a legibilidade do código e reduzir a duplicação de código em várias funções semelhantes. Para isso, ele decide aplicar o conceito de refatoração, tornando o código mais limpo, fácil de manter e entender.
Sobre a situação em destaque, assinale a alternativa que reconhece uma abordagem adequada de refatoração:
A)

O desenvolvedor poderia adicionar comentários em todas as linhas de código, explicando o que cada uma faz, sem alterar a estrutura do código.

B)

O desenvolvedor poderia agrupar as funções semelhantes em uma única função, melhorando a clareza e a reutilização do código, mantendo a funcionalidade.

C)

O desenvolvedor poderia remover todas as funções repetidas sem analisar o impacto no comportamento do sistema, para reduzir o tamanho do código.

D)

O desenvolvedor poderia renomear as variáveis para palavras mais complicadas, para aumentar a complexidade e o nível de sofisticação do código.

E)

O desenvolvedor poderia manter as funções como estão, pois a complexidade do código não impacta seu funcionamento ou a lógica geral.

function vote(questaoId, value) { window.location.href = "/accounts/login/?next=/questao/124/"; return; fetch(`/vote/questao/${questaoId}/`, { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-CSRFToken': 'ybXXhfKG539TCqiU74r1jTBO3s7EA8y1hCbWMrVcBhEnu9YJoqYUI7SzdSyIhb2a' }, body: JSON.stringify({ value: value }) }) .then(response => response.json()) .then(data => { if (data.success) { document.getElementById(`score-${questaoId}`).textContent = data.score; const upBtn = document.querySelector(`button[onclick="vote(${questaoId}, 1)"]`); const downBtn = document.querySelector(`button[onclick="vote(${questaoId}, -1)"]`); upBtn.classList.remove('active-up'); downBtn.classList.remove('active-down'); if (data.user_vote === 1) upBtn.classList.add('active-up'); if (data.user_vote === -1) downBtn.classList.add('active-down'); } }); }