Geral
Gerência e Qualidade de Software
Semana 2
0
Questão
Joana está desenvolvendo um sistema em C++ que será utilizado em diferentes sistemas operacionais. Para facilitar a portabilidade e automatizar a criação dos arquivos de compilação, ela decide usar o CMake. No diretório raiz do projeto, ela cria um arquivo chamado CMakeLists.txt e, a partir dele, gera os arquivos de build para diferentes ambientes, utilizando, em seguida, comandos específicos para compilação e execução.
Com base na situação descrita e nos conhecimentos sobre o funcionamento do CMake, observe as afirmativas abaixo:
I. O uso do CMakeLists.txt permite que Joana defina quais arquivos-fonte serão incluídos na compilação, bem como o nome do executável resultante.
II. A execução do comando make após o CMake é possível porque o CMake gerou um Makefile compatível com o sistema da Joana.
III. O CMake substitui o compilador, realizando a compilação do projeto de forma independente, sem precisar do make ou do gcc.
Está correto o que se afirma em:
function vote(questaoId, value) {
window.location.href = "/accounts/login/?next=/questao/38/";
return;
fetch(`/vote/questao/${questaoId}/`, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-CSRFToken': 'VMxvd7FsWSDyaoDFZoTWv1TbU263TgSjEWyx5L0PfXMKDAPJv811CeRLrIISipVF'
},
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');
}
});
}