Concordo com a [Sugestão] publicada por Mateus Stroppa (em 11/03/2025) — que até hoje não foi atendida — e reforço que os problemas apontados por ele permanecem. Em resumo:
- Há meses foi sugerida uma melhoria concreta no fórum; nada mudou: os exercícios continuam repetitivos e sem evolução.
- O exercício 8 (da unidade anterior — Herança) é mais estruturado e exigente que o exercício 9 (unidade de Polimorfismo e Métodos Abstratos). Isso é incoerente com a progressão esperada do curso.
- O exercício 9 usa um método abstrato de forma superficial e não exige uma aplicação prática de polimorfismo (nem pede implementação/saída efetiva). Se o aluno seguir estritamente o enunciado, o ganho prático é mínimo.
- O domínio permanece invariavelmente o mesmo (classe
Carro/veiculo) — esta é ao menos a terceira(1 no curso de OOP básico e 2 nesse curso "avançado") vez que a classe aparece sem refatoração ou aprofundamento. Repetir sem aumentar complexidade ou reaproveitar conscientemente o código anterior transmite a impressão de tarefas feitas apenas para cumprir tabela. - Falta conexão pedagógica entre unidades: em vez de um salto progressivo, há regressão na exigência técnica quando deveria haver consolidação e ampliação do uso de abstrações.
Sugestões objetivas (curtas) para tornar os exercícios realmente úteis ao aluno:
- Refatorar exercícios anteriores: pedir que o aluno reaproveite e refatore código da classe veículo do exercício 8 unidade de Herança para utilizar o polimorfismo e @abstractmethod, indicando o caminho da refatoração e ensinando um pratica comum na programação: "refatorar código".
- Mudar o domínio: propor outras classes e contextos para exercitar diferentes responsabilidades.
- Criar cenários aplicáveis: problemas com regras de negócio que exigem comportamentos distintos por implementação (descontos, processamento, formatos de saída).
- Exigir entregáveis concretos: implementar, executar e mostrar saídas — não apenas declarar métodos abstratos. Os exercícios podem ser mais explicativos. O exercício 09 citado, termina sem pedir para imprimir o resultado...
Em suma: concordo com Mateus e acrescento que o curso, no momento, perde a oportunidade de transformar teoria em prática progressiva. Para um módulo que se intitula “avançado”, os exercícios deveriam aumentar a complexidade, diversificar domínios e exigir aplicações reais de polimorfismo e abstração — não repetições superficiais da mesma classe.
Espero que se tenha mais zelo com o ensino, por meio de reformulação desses exercícios.