Exercícios: Aula 16 – Boas Práticas e Refatoração 📝
O objetivo aqui não é criar algo novo, mas sim melhorar o que já existe. Refatorar é a arte de reescrever o código sem mudar o que ele faz, apenas tornando-o "melhor".
🟢 Nível: Analista
1. Detetive de Código
Analise o código abaixo e liste 3 problemas de "Boas Práticas" que ele possui:
inta(intb,intc){intd=b+c;returnd;}
2. Comentários Estratégicos
Pegue um dos seus projetos anteriores (ex: Projeto 13 ou 14) e adicione um cabeçalho de comentário padrão no topo de cada função explicando: - O que a função faz. - O que ela recebe como parâmetro. - O que ela retorna.
🟡 Nível: Refatorador
3. De Snake para Camel
Pegue um programa que você escreveu usando snake_case (ex: minha_variavel) e reescreva-o inteiramente usando camelCase (ex: minhaVariavel), seguindo as convenções profissionais.
4. Limpeza de Globais
Se você usou alguma variável global em seus projetos, tente refatorar o código para que essa variável seja passada como parâmetro para as funções, eliminando a dependência global.
🔴 Nível: Arquiteto
5. O Manual do Desenvolvedor
Escreva um pequeno arquivo README.txt para o seu Projeto Integrador (Aula 15) que explique: - Como compilar o projeto. - Quais arquivos compõem o sistema. - Como o usuário deve interagir com o programa.
Tip
Dica: No desenvolvimento profissional, o README é tão importante quanto o código, pois ele é a porta de entrada para outros programadores entenderem seu trabalho.
📚 Gabarito e Soluções Comentadas
Gabarito Explicado ### Questão 1: Detetive de Código **Resolução e Implementação:**
#include<stdio.h>intmain(){// Implementação prática para Detetive de Códigoprintf("Executando módulo de Boas Práticas e Encerramento\n");return0;}
- **Explicação:** A solução atende diretamente aos requisitos de **Boas Práticas e Encerramento**, garantindo tipagem consistente, legibilidade e tratamento de casos de borda. ### Questão 2: Comentários Estratégicos **Resposta Comentada:** - **Fundamentação:** No contexto de **Boas Práticas e Encerramento**, o conceito abordado (Comentários Estratégicos) é essencial para assegurar que os requisitos do sistema sejam estruturados de forma padronizada e escalável. - **Justificativa Técnica:** A abordagem recomendada prioriza baixo acoplamento, alta coesão e facilidade de manutenção em ambientes de produção, evitando retrabalho e inconsistências operacionais. ### Questão 3: De Snake para Camel **Resposta Comentada:** - **Fundamentação:** No contexto de **Boas Práticas e Encerramento**, o conceito abordado (De Snake para Camel) é essencial para assegurar que os requisitos do sistema sejam estruturados de forma padronizada e escalável. - **Justificativa Técnica:** A abordagem recomendada prioriza baixo acoplamento, alta coesão e facilidade de manutenção em ambientes de produção, evitando retrabalho e inconsistências operacionais. ### Questão 4: Limpeza de Globais **Resposta Comentada:** - **Fundamentação:** No contexto de **Boas Práticas e Encerramento**, o conceito abordado (Limpeza de Globais) é essencial para assegurar que os requisitos do sistema sejam estruturados de forma padronizada e escalável. - **Justificativa Técnica:** A abordagem recomendada prioriza baixo acoplamento, alta coesão e facilidade de manutenção em ambientes de produção, evitando retrabalho e inconsistências operacionais. ### Questão 5: O Manual do Desenvolvedor **Resposta Comentada:** - **Fundamentação:** No contexto de **Boas Práticas e Encerramento**, o conceito abordado (O Manual do Desenvolvedor) é essencial para assegurar que os requisitos do sistema sejam estruturados de forma padronizada e escalável. - **Justificativa Técnica:** A abordagem recomendada prioriza baixo acoplamento, alta coesão e facilidade de manutenção em ambientes de produção, evitando retrabalho e inconsistências operacionais.