📁 Arquitetura Padrão para Aulas Técnicas

🎯 Estrutura Recomendada

📂 Organização por Função:

template-aula-tecnica/
├── 📚 material-pedagogico/           # Conteúdo educacional
│   ├── 01-plano-de-aula.md         # Roteiro detalhado da aula
│   ├── 02-slides-apresentacao.md    # Slides Marp para projeção
│   ├── 03-exercicios-praticos.md    # Atividades e desafios
│   ├── 04-guia-professor.md         # Dicas e troubleshooting
│   └── 05-material-apoio.md         # Leituras complementares
├── 💻 projeto-pratico/              # Código funcional
│   ├── src/main/java/               # Código de produção
│   ├── src/test/java/               # Testes unitários
│   ├── pom.xml                      # Configuração Maven
│   └── README.md                    # Instruções do projeto
├── 📋 templates/                    # Templates reutilizáveis
│   ├── template-plano-aula.md       # Modelo de plano
│   ├── template-slides.md           # Modelo de apresentação
│   ├── template-exercicios.md       # Modelo de atividades
│   └── template-projeto/            # Estrutura base de código
├── 📖 documentacao/                 # Guias e referências
│   ├── boas-praticas-slides.md      # Como criar slides eficazes
│   ├── pedagogia-tecnica.md         # Didática para aulas técnicas
│   └── troubleshooting-comum.md     # Soluções para problemas
├── 🎨 assets/                       # Recursos visuais
│   ├── images/                      # Diagramas, screenshots
│   ├── icons/                       # Ícones personalizados
│   └── templates-css/               # Estilos Marp customizados
└── 🤖 automacao/                    # Prompts e scripts
    ├── prompt-criacao-aula.md       # Prompt para gerar novas aulas
    ├── checklist-qualidade.md       # Validação de conteúdo
    └── scripts/                     # Automação de tarefas

🔄 Refatoração do Projeto Atual

Estado Atual → Estado Desejado:

# ANTES (Misturado)
conversor-moedas/
├── java-testes-tdd-aula.md Misturado
├── apresentacao-tdd-slides.md Misturado
├── plano-de-aula-tdd-java.md Misturado
├── guia-do-professor.md Misturado
├── marp-demo-recursos-nativos.md Não específico
├── src/main/java/ OK
├── src/test/java/ OK
└── pom.xml OK
 
# DEPOIS (Organizado)
aula-tdd-java/
├── material-pedagogico/
   ├── plano-de-aula.md
   ├── slides-apresentacao.md
   ├── exercicios-praticos.md
   └── guia-professor.md
├── projeto-pratico-tdd/
   ├── src/main/java/
   ├── src/test/java/
   ├── pom.xml
   └── README.md
└── assets/
    └── images/

🏗️ Vantagens da Nova Arquitetura

Separação Clara de Responsabilidades:

  • Material pedagógico sem código misturado
  • Projeto prático focado apenas em funcionalidade
  • Templates reutilizáveis para novas aulas
  • Documentação centralizada e consultável

Reutilização Eficiel:

  • Templates prontos para spawnar novas aulas
  • Assets compartilhados (CSS, imagens, ícones)
  • Prompts agnósticos para qualquer tecnologia
  • Padrões estabelecidos para manter qualidade

Manutenção Simplificada:

  • Versionamento independente por componente
  • Atualização segura de templates sem quebrar aulas existentes
  • Colaboração facilitada (cada pessoa pode focar em sua área)

Escalabilidade:

  • Adicionar novas aulas copiando template
  • Compartilhar entre professores facilmente
  • Adaptar para outras tecnologias (Python, C#, etc.)

🎯 Padrão de Nomenclatura

📁 Pastas:

kebab-case/                    # Pastas sempre em minúsculo
├── material-pedagogico/
├── projeto-pratico/
└── template-base/

📄 Arquivos:

## Material Pedagógico (numerado por ordem de uso)
01-plano-de-aula.md           # Sequência clara
02-slides-apresentacao.md
03-exercicios-praticos.md
04-guia-professor.md
 
## Código (padrão Java/Maven)
pom.xml                       # Configuração
README.md                     # Instruções
src/main/java/                # Código fonte
src/test/java/                # Testes
 
## Templates (prefixo "template-")
template-plano-aula.md        # Reutilizável
template-slides.md
template-exercicios.md

🏷️ Tags e Metadados:

---
# Metadados padrão para qualquer aula
title: "Aula: [Tópico]"
technology: "java" # java, python, csharp, javascript
level: "iniciante" # iniciante, intermediario, avancado
duration: 90 # minutos
type: "teorico-pratico" # teorico, pratico, teorico-pratico
version: "1.0"
created: "2026-03-02"
authors: ["Prof. Nome"]
tags: ["tdd", "testing", "junit"]
---

🤖 Automação e Templates

📋 Template de Plano Base:

---
title: "Aula: [TECNOLOGIA] - [TÓPICO]"
technology: "[TECH]"
level: "[LEVEL]"
duration: [MINUTES]
type: "teorico-pratico"
---
 
# 📚 Plano de Aula: [TÓPICO]
 
## 🎯 Objetivos
 
### Teóricos:
 
- [ ] [Objetivo 1]
- [ ] [Objetivo 2]
 
### Práticos:
 
- [ ] [Objetivo 1]
- [ ] [Objetivo 2]
 
## ⏰ Cronograma ([DURATION] min)
 
| Tempo  | Atividade   | Tipo   |
| ------ | ----------- | ------ |
| 0-Xmin | [Atividade] | [Tipo] |
 
## 💻 Atividades Práticas
 
### Atividade 1: [Nome]
 
[Descrição]
 
## 📊 Avaliação
 
[Critérios]

🎨 Template de Slides Base:

---
marp: true
theme: default
paginate: true
title: "[TECHNOLOGY] - [TOPIC]"
backgroundColor: #ffffff
header: "**[TECHNOLOGY]** | [TOPIC]"
footer: "Prof. [NAME] | [DATE] | Slide **{pageNo}**"
---
 
<!-- _class: title -->
 
# 🚀 [TOPIC]
 
**[SUBTITLE]**
 
### 🎯 Objetivos:
 
- ✅ [Objetivo 1]
- ✅ [Objetivo 2]
 
**⏱️ Duração:** [DURATION] min

📦 Sistema de Distribuição

🎁 Pacote Completo por Aula:

# Estrutura para distribuir aula completa
aula-[tecnologia]-[topico].zip
├── LEIAME.md                 # Instruções de instalação
├── material-pedagogico/      # Para o professor
├── projeto-pratico/          # Para alunos executarem
├── solucoes/                 # Gabarito (pasta protegida)
└── recursos-extras/          # Material complementar

🔄 Versionamento Semântico:

v1.0.0 - Versão inicial estável
v1.1.0 - Novo exercício adicionado
v1.1.1 - Correção de bug no código
v2.0.0 - Mudança para nova versão da tecnologia

🎯 Casos de Uso da Nova Estrutura

👨‍🏫 Professor Criando Nova Aula:

  1. Copia template base
  2. Executa prompt agnóstico
  3. Personaliza conteúdo específico
  4. Valida com checklist de qualidade
  5. Distribui pacote completo

👥 Equipe Colaborando:

  1. Designer cuida dos assets visuais
  2. Pedagogo foca no plano de aula
  3. Dev Senior cria código de exemplo
  4. Professor ajusta para turma específica

🔄 Reutilizando para Outras Tecnologias:

  1. Mantém estrutura pedagógica
  2. Substitui apenas projeto-pratico/
  3. Ajusta metadados da tecnologia
  4. Adapta exemplos específicos

Próximo passo: Quer que eu implemente essa refatoração e crie o prompt agnóstico?