Curso gratuito
Curso de Python Avançado
Domine tipagem, async, metaclasses, performance e engenharia de software de verdade. O terceiro e último curso da trilha Python do ValorFinal, para quem já escreve código organizado (orientação a objetos, decoradores, geradores e testes) e quer pensar como engenheiro. Você vai dominar tipagem estática com type hints e mypy, dataclasses, programação funcional com functools e itertools, decoradores avançados, context managers, geradores e iteradores avançados, concorrência com threads, async e asyncio, orientação a objetos avançada, metaclasses e descritores, exceções e logging, testes com pytest, performance e profiling, empacotamento e boas práticas de projeto, e vai fechar com uma biblioteca completa, tipada e testada. Cada aula tem exemplos comentados, exercícios com correção automática no Playground e fontes oficiais da documentação em português. É o topo da trilha: sem promessa de emprego, só engenharia de verdade e código do jeito que profissionais escrevem.
Por Cesar Gargiulo, especialista em segurança da informação. Revisado pela equipe ValorFinal e GuardiaSec.
Comece do jeito certo
Por onde você quer começar?
Escolha o seu ponto de partida. Você pode mudar quando quiser: todo o conteúdo fica liberado.
O que você leva neste curso
O conteúdo é todo gratuito. Veja o que cada plano libera antes de começar.
Conta grátis
R$ 0
- ✓ Ler todas as aulas, sem login
- ✓ Salvar o progresso só neste aparelho
- ✓ Fazer as mini-provas de cada módulo
- ✓ Conquistar e ver todas as medalhas
- ✓ Compartilhar as conquistas no LinkedIn
♛ ValorFinal VIP
Certificado + extras
- ✦ Tudo do plano grátis
- ✦ Certificado de conclusão verificável em PDF com o seu nome
- ✦ Open Badge do certificado (credencial aberta, padrão 1EdTech, para o LinkedIn e carteiras de medalhas)
- ✦ Certificado ancorado no Bitcoin (OpenTimestamps), com comprovante verificável de forma independente
- ✦ Anotações nas aulas, com grifar para anotar e sincronizadas entre aparelhos
- ✦ Valim, o tutor de IA, dentro das aulas
- ✦ Comunidade de dúvidas por aula, com a 1a resposta do Valim
- ✦ Liga semanal de XP e Hall da Fama do curso
- ✦ Progresso salvo na sua conta e sincronizado entre aparelhos (no mesmo computador, cada conta vê só o seu avanço)
- ✦ Portal inteiro sem anúncios
Conteúdo do curso
Módulo 1: Boas-vindas ao Python Avançado
3 aulasO ponto de partida do topo da trilha: o que você já domina do Intermediário, o que muda quando o objetivo deixa de ser só organizar e passa a ser projetar com intenção. Uma revisão relâmpago da orientação a objetos e dos recursos avançados, e as ferramentas de engenharia que acompanham todo o curso.
Módulo 2: Tipagem estática
5 aulasO primeiro pilar da engenharia em Python: declarar os tipos que o seu código espera e devolve. Você aprende os type hints, o módulo typing com Optional, Union, list, dict e Callable, o começo de generics com TypeVar, o Protocol para duck typing tipado e o verificador mypy que confere tudo antes de rodar.
Módulo 3: Dataclasses e estruturas de dados
5 aulasComo modelar dados com elegância em Python. O decorador @dataclass gera automaticamente o construtor, a representação e a comparação de uma classe de dados. Você aprende field com default_factory, a imutabilidade com frozen, a validação no __post_init__, o Enum para constantes nomeadas e como escolher entre dataclass, namedtuple, dicionário e tupla.
Módulo 4: Programação funcional
5 aulasUm estilo de programação que trata funções como valores e evita efeitos colaterais. Você aprende funções puras e imutabilidade, as ferramentas do functools (reduce, partial e o cache do lru_cache), os geradores infinitos e combinadores do itertools, e quando preferir map e filter às compreensões de lista.
Módulo 5: Decoradores avançados
5 aulasO decorador simples do Intermediário era só o começo. Aqui você aprende a preservar a identidade da função com functools.wraps, a construir decoradores que recebem argumentos, a decorar classes inteiras, a empilhar decoradores na ordem certa e a reconhecer os padrões que aparecem em qualquer código profissional: log, cronômetro, cache, validação e retry.
Módulo 6: Context managers e o with
5 aulasO comando with que você usa para abrir arquivos guarda um mecanismo elegante por baixo: o context manager, que garante a limpeza de um recurso aconteça o que acontecer. Aqui você aprende o protocolo __enter__ e __exit__, o atalho com @contextlib.contextmanager e yield, e monta seus próprios gerenciadores para arquivos, locks, transações e cronômetros.
Módulo 7: Geradores e iteradores avançados
5 aulasPor trás de todo for existe o protocolo do iterador, e por trás dele está o poder dos geradores. Aqui você desce ao __iter__ e __next__, monta pipelines preguiçosos que processam dados enormes com pouca memória, delega com yield from, dompteia sequências infinitas com islice e conhece o send, o passo que faz a ponte para a programação assíncrona.
Módulo 8: Concorrência com threads
5 aulasO primeiro passo para lidar com muitas tarefas ao mesmo tempo. Você entende a diferença entre concorrência e paralelismo, o famoso GIL e o que ele implica, cria threads na prática, aprende a evitar a race condition com Lock, coordena produtor e consumidor com fila e usa o ThreadPoolExecutor para trabalho de I/O em lote.
Módulo 9: Async e asyncio
5 aulasOutra forma de fazer muitas tarefas de I/O ao mesmo tempo, sem threads. Você entende por que a espera desperdiça tempo, escreve corrotinas com async def e await, roda o event loop com asyncio.run, dispara várias tarefas juntas com asyncio.gather e aprende quando async é melhor que threads e quando não é.
Módulo 10: Orientação a objetos avançada
5 aulasO coração do projeto de software em Python. Você aprende a proteger atributos com @property e validação, a criar métodos de classe e estáticos, a fazer suas classes se integrarem à linguagem com os métodos dunder, a economizar memória com __slots__, a entender herança múltipla e a ordem de resolução de métodos, e a escolher entre composição e herança com critério.
Módulo 11: Metaclasses e descritores
5 aulasO andar de baixo da orientação a objetos em Python. Aqui você descobre que classes também são objetos, entende como type() fabrica classes, o que é uma metaclass e quando (raramente) vale usar, e como os descritores fazem @property funcionar por dentro. Poder de verdade, para usar com parcimônia.
Módulo 12: Exceções, logging e robustez
5 aulasO módulo que separa um script que funciona de um programa em que se pode confiar. Você desenha uma hierarquia de exceções própria do seu domínio, encadeia erros sem perder a causa, usa o módulo logging no lugar do print e adota uma postura defensiva: validar cedo e falhar de forma clara.
Módulo 13: Testes avançados
5 aulasTestar de verdade, do jeito profissional. Você troca os asserts soltos pelo pytest, o framework de testes mais usado do Python, e aprende a organizar o teste com fixtures, cobrir muitos casos com parametrize, testar erros e dependências com pytest.raises e mocks, medir cobertura e adotar o ciclo TDD.
Módulo 14: Performance e profiling
5 aulasAntes de acelerar qualquer código, você precisa saber onde ele é lento. Este módulo ensina a medir com timeit, a achar o gargalo real com cProfile e pstats, a raciocinar sobre complexidade sem matemática pesada, a escolher a estrutura de dados certa e a usar memoização e geradores. A regra é uma só: meça primeiro, otimize depois.
Módulo 15: Empacotamento e boas práticas
5 aulasEscrever funções que funcionam é só metade do trabalho de engenharia. A outra metade é organizar tudo num projeto navegável, com estrutura de pacote clara, imports bem resolvidos, estilo consistente e princípios de design que mantêm o código fácil de mudar. Este módulo reúne a estrutura de projetos, o pyproject.toml, PEP 8, SOLID e os padrões pythônicos de código limpo.
Módulo 16: Projeto final: mini biblioteca de utilidades
5 aulasChegou a hora de juntar tudo. Neste módulo você constrói, passo a passo, uma mini biblioteca de utilidades tipada e testada, o pacote catalogo, para gerenciar produtos e preços. Cada aula acrescenta uma camada: dataclasses e Enum, decoradores próprios e context manager, exceções e logging, e por fim testes com pytest e empacotamento. É o código que prova, para você mesmo, que você projeta software.
Quem fez este curso
Cesar Gargiulo
Especialista em Cloud Security e Segurança da Informação
Cesar tem 19 anos de carreira em tecnologia e segurança da informação. Trabalha com AWS, atua nos times de defesa (Blue Team) e de ataque (Red Team) e lidera projetos de arquitetura segura, resposta a incidentes e testes de invasão. É pós-graduado em Offensive Cyber Security pela FIAP, tem MBA em Governança de TI e certificações em pentest e redes.
Cada aula passa pelo mesmo cuidado: explicar de forma simples, com fonte e sem promessa fácil.