Trilha irmã do LearnCSharp: mesmas 18 semanas e a mesma progressão,
com os equivalentes idiomáticos do ecossistema Python. Cada pasta semana_N_tema é
independente; os arquivos numerados (01_..., 02_...) podem ser lidos na ordem.
| Semana | Tema | Equivalente no C# | Destaques |
|---|---|---|---|
| 1 | Fundamentos | Fundamentos | tipagem dinâmica, match/case, funções, listas/strings |
| 2 | OOP | OOP | classes, herança, ABC/Protocol, duck typing, @property |
| 3 | Collections | Collections & Generics | list/dict/set, deque, Counter, TypeVar/Generic |
| 4 | Comprehensions & itertools | LINQ | comprehensions, map/filter, groupby, generators, joins |
| 5 | Asyncio | Async & Await | gather, wait, cancelamento, timeout, Semaphore, Queue |
| 6 | FastAPI | ASP.NET Core | rotas, Depends() (DI), middleware, Pydantic |
| 7 | Web APIs | Web APIs | CRUD REST, DTOs/validação, status codes, cliente httpx |
| 8 | SQLAlchemy | Entity Framework Core | Session, relacionamento 1-N, CRUD, selectinload |
| 9 | SQL | SQL (ADO.NET) | sqlite3 puro, scripts de schema, transações |
| 10 | Clean Architecture | Clean Architecture | domínio / aplicação / infraestrutura / composition root |
| 11 | Microservices | Microservices | dois serviços FastAPI se comunicando via HTTP |
| 12 | Docker | Docker | Dockerfile com cache de camadas, docker-compose com banco |
| 13 | Azure | Azure | Blob Storage, Key Vault |
| 14 | AWS | AWS | S3, DynamoDB (boto3) |
| 15 | GenAI | GenAI | chamada HTTP a uma LLM, roles e prompt engineering |
| 16 | RAG | RAG | chunking, embeddings simplificados, retrieval + prompt aumentado |
| 17 | MCP | MCP | servidor e cliente JSON-RPC sobre stdio, do zero |
| 18 | AI Agents | AI Agents | loop ReAct (Thought → Action → Observation → Final Answer) |
- Python 3.11+ (3.12 recomendado)
- Docker (só para a Semana 12)
- Semanas com dependências externas têm
requirements.txtpróprio; as demais usam só a stdlib - Cada semana tem seu
README.mdcom instruções específicas
cd semana_1_fundamentos
python main.py
(Semanas 6, 7, 8 e 11: pip install -r requirements.txt antes. Semana 17: python cliente/cliente_mcp.py.)