Pular para conteúdo

Quiz 16 - Introdução

1. Qual a importância da organização de pastas em um projeto profissional?
Nenhuma, o compilador acha tudo
Facilitar a navegação, manutenção e colaboração por outros desenvolvedores
Deixar o projeto mais pesado
É uma exigência do Windows > Explicação: Padrões como `/src` e `/include` são universais no ecossistema C++.
2. O que deve conter um arquivo `README.md` de qualidade?
Apenas o nome do autor
Descrição do projeto, instruções de build, funcionalidades e requisitos
O código-fonte inteiro do projeto
Poemas sobre programação > Explicação: O README é a porta de entrada e o manual rápido para qualquer desenvolvedor que use seu código.
3. Por que devemos comentar o código, mesmo em projetos individuais?
Para gastar mais tempo
Para explicar a lógica de partes complexas (o "porquê"), facilitando revisões futuras
Porque o compilador exige
Para aumentar o número de linhas do arquivo > Explicação: Comentários ajudam o "você do futuro" e seus colegas a entenderem decisões arquiteturais.
4. No Projeto Final, o que o uso da STL (como vector) demonstra?
Que o aluno sabe copiar código
Domínio sobre containers dinâmicos e algoritmos modernos de manipulação de dados
Que o aluno não sabe usar arrays
Que o projeto é simples demais > Explicação: STL é a base do C++ profissional e substitui o gerenciamento manual e arriscado de memória.
5. Qual o papel da Persistência de Dados (Arquivos) no projeto?
Guardar segredos
Garantir que as informações inseridas pelo usuário não sejam perdidas ao fechar o programa
Deixar o computador mais lento
Proteger contra vírus > Explicação: Um sistema útil precisa manter seu estado entre diferentes execuções.
6. O que é um "Caminho Relativo" para um arquivo de dados?
Um caminho que depende do humor do sistema
Um caminho baseado na posição atual do executável (ex: "data/db.txt")
O caminho completo começando por C:\
Um link da internet > Explicação: Caminhos relativos tornam o projeto portátil para outras máquinas.
7. No C++, o que significa "Escopo Global"?
O mundo inteiro
Variáveis acessíveis apenas pela internet
Variáveis declaradas fora de qualquer função, acessíveis por todo o arquivo
O nome do projeto > Explicação: Embora úteis em casos raros, globais devem ser evitadas para prevenir efeitos colaterais.
8. Qual a vantagem de usar o CMake para o Projeto Final?
Não precisa de compilador
O projeto pode ser compilado no Windows/Linux/Mac com o mesmo arquivo de configuração
Corrige erros de lógica automaticamente
Compacta o código > Explicação: CMake abstrai as particularidades de cada sistema operacional.
9. O que é uma "Refatoração"?
Apagar o código e começar do zero
Melhorar a estrutura interna do código sem alterar seu comportamento externo
Mudar as cores do editor
Adicionar novas funcionalidades complexas > Explicação: Refatorar deixa o código mais limpo, eficiente e fácil de manter.
10. Qual a melhor forma de testar seu Projeto Final?
Rodar uma vez e torcer pra não quebrar
Testar casos de borda (números negativos, nomes vazios, arquivos inexistentes)
Pedir para a IA escrever tudo
Não testar > Explicação: Testes de estresse (Edge cases) garantem a robustez e confiabilidade do seu software.