Python Avançado: Async, Decorators e Performance
- Nível: Avançado
- Módulos: 6
- Aulas: 38
- Tempo de leitura: 1h 51min
- Tecnologias: Python
- Preço: Gratuito
Código do curso: github.com/johnpires/python-avancado-async-decorators-e-performance
Domine os recursos mais poderosos do Python moderno e eleve sua programação a um nível profissional. Neste curso avançado, você aprenderá a construir aplicações altamente performáticas utilizando programação assíncrona com asyncio, compreenderá profundamente o modelo de execução concorrente do Python e saberá quando usar threads, processos ou corrotinas para máxima eficiência.
Explore o universo dos decorators e metaclasses para criar abstrações elegantes e reutilizáveis, aplicando padrões de design sofisticados que tornam seu código mais expressivo e manutenível. Você aprenderá a construir frameworks e bibliotecas robustas, utilizando recursos avançados como descritores, context managers personalizados e o protocolo de dados do Python.
Ao final do curso, você terá um domínio sólido sobre profiling e otimização de código Python, saberá identificar e corrigir gargalos de performance, e será capaz de aplicar técnicas avançadas de memória e CPU para construir sistemas de alta escala. Um projeto prático consolidará todo o aprendizado em uma aplicação real de alta performance.
Conteúdo do curso
Módulo 1: Programação Assíncrona com asyncio
- Introducao ao asyncio e o Event Loop do Python (2 min)
- Corrotinas, async/await e Awaitables (2 min)
- Tasks e Futures: Criando Concorrencia Real (2 min)
- gather, wait e as Ferramentas de Concorrencia do asyncio (3 min)
- Streams Assincronos: I/O de Rede com asyncio (3 min)
- Semaforos, Locks e Primitivos de Sincronizacao Assincronos (3 min)
Módulo 2: Concorrência: Threads, Processos e Corrotinas
- O GIL do Python e Seus Efeitos na Concorrencia (3 min)
- Threading em Python: Quando e Como Usar (2 min)
- Multiprocessing: Paralelismo Real em Python (3 min)
- concurrent.futures: API Unificada de Alto Nivel (2 min)
- asyncio vs Threads vs Processos: Guia Definitivo (3 min)
- Integrando Codigo Sincrono com asyncio: Estrategias Avancadas (3 min)
Módulo 3: Decorators e Metaprogramação
- Funcoes de Primeira Classe e Closures Avancadas (2 min)
- Decorators Simples: Principios e Implementacao (8 min)
- Decorators com Parametros e Decorators de Classe (2 min)
- Metaclasses: Controlando a Criacao de Classes (3 min)
- Descritores: O Protocolo Mais Poderoso do Python (3 min)
- Context Managers Avancados e o Protocolo de Iteracao (2 min)
- Protocolos e ABCs: Interfaces Pythonic (3 min)
Módulo 4: Descritores, Context Managers e Protocolo de Dados
- Descriptors: O Mecanismo por Tras das Properties (3 min)
- __slots__, __init_subclass__ e Customizacao de Classes (3 min)
- Protocolos e Tipagem Estrutural com Protocol e ABC (3 min)
- Metaclasses: Controlando a Criacao de Classes (3 min)
- Geradores Avancados, itertools e Programacao Funcional (3 min)
- Context Managers e o Protocolo with (2 min)
Módulo 5: Performance, Profiling e Otimização
- Profiling: Encontrando Gargalos de Performance (3 min)
- Otimizacao de Memoria: slots, arrays e memoryview (3 min)
- Caching Avancado: lru_cache, Redis e Estrategias (3 min)
- Compilacao JIT e Extensoes C: Performance Extrema (2 min)
- NumPy e Vetorizacao: De Loops a Operacoes de Array (3 min)
- Python Moderno: Novidades das Versoes Recentes (3 min)
Módulo 6: Projeto Final: Sistema Assíncrono de Alta Performance
- Arquitetura do Projeto: Worker Pool com Monitoramento (3 min)
- Implementando o Nucleo Assincrono do Worker Pool (4 min)
- Decorators de Retry, Timeout e Circuit Breaker (3 min)
- Sistema de Plugins com Metaclasse e Registry Pattern (3 min)
- Monitoramento, Metricas e Observabilidade (3 min)
- Testes Avancados: pytest, mocks e Coverage (3 min)
- Recapitulacao Final e Proximos Passos (4 min)