Pular para o conteúdo

Exercícios

216 exercícios em 26 módulos, cada um verificando o próprio resultado.

Como funcionam#

Cada exercício verifica o próprio resultado com `assert` — se ele roda sem erro, está correto. Não há gabarito separado: o código é a resposta e o teste ao mesmo tempo.

bash
python3 exercicios/run_all.py          # todos os 216
python3 exercicios/run_all.py 14       # só o módulo 14
python3 exercicios/run_all.py 03 07    # módulos 03 e 07

dataforge run exercicios/01-fundamentos/001_ola_mundo.df

Os módulos 11 a 26 trazem um arquivo .md ao lado de cada .df, com enunciado, conceitos, saída esperada e sugestões para experimentar.

Os 26 módulos#

MóduloExercíciosAssunto
**01 · Fundamentos**12tipos, operadores, precedência, conversão e anotações
**02 · Controle fluxo**12given/orif/otherwise, ternário, match e guardas
**03 · Colecoes**14cluster e vault, fatias, spread e compreensões
**04 · Strings**10interpolação, métodos de texto, formatação e regex
**05 · Acoes**14parâmetros, padrões, retorno, closures e recursão
**06 · Blueprints**14campos, métodos, herança, traits e records
**07 · Erros**10monitor/handle/ensure, trigger, retry e defer
**08 · Pipelines**12sift, morph, distill e composição
**09 · Modulos**12adopt, relay, seleção e apelidos
**10 · Avancado**10decoradores, generators, threads e canais
**11 · Tipos e checagem**6anotações, o analisador estático e generics
**12 · Records e enums**6imutabilidade, 'with' e enums com valor
**13 · Desestruturacao**6cluster, vault, rest e troca de variáveis
**14 · Pattern matching**6point, when, tipos, sequências e vaults
**15 · Streams e generators**6stream action, emit, take e sequências infinitas
**16 · Modulos e projetos**6forge.toml, pacotes e organização
**17 · Tempo e sistema**6datas, durações, ambiente e processos
**18 · Dados e persistencia**6JSON, CSV, SQLite e serialização
**19 · Concorrencia**6threads, canais, tarefas e paralelismo
**20 · Projetos finais**6programas completos, de ponta a ponta
**21 · Oop avancado**10propriedades, estáticos, operadores, SOLID
**22 · Web kiln**7rotas, respostas, templates e estáticos
**23 · Dados e planilhas**3frames, agregação e .xlsx
**24 · Banco de dados**8Forge: conexão, consultas, transações e ORM
**25 · Testes crucible**4suítes, matchers, fixtures e dublês
**26 · Complexidade**4Big-O, memoização e custo de estrutura