Capa do livro Django Rest Framework de A a Z
Casa do Código

Django Rest Framework de A a Z

por Tiago Silva · Casa do Código

Domine o ecossistema das APIs REST com back-ends escaláveis

Preços na Casa do Código
ImpressoR$ 69,90
E-bookR$ 39,90
E-book + impressoR$ 89,90

Quem compra o e-book tem acesso às atualizações futuras do livro.

Páginas
334
Publicação
10/2026
ISBN
978-85-5519-442-9
Formatos
Impresso, e-book (PDF e ePub) e e-book + impresso

Sobre este livro

Uma API REST segura, robusta e de alto desempenho, pronta para produção

Neste livro, você aprenderá a criar uma API RESTful com o Django REST Framework, o maior toolkit para APIs REST que existe para o ecossistema Django. Considerado uma das soluções mais robustas da atualidade para esse tipo de desenvolvimento, o framework permite criar APIs de alta performance com facilidade de implementação e uma documentação excelente e extremamente útil.

Utilizaremos o projeto de um Sistema de Gestão de Produtos como base para explorar conceitos profundos. Ao final, você não terá apenas uma API funcionando, mas um portfólio de código que segue os padrões exigidos por grandes empresas de tecnologia.

A estrutura é híbrida de propósito: capítulos inteiramente dedicados ao “mão na massa”, nos quais você constrói passo a passo o projeto ProductManager (com Docker, CI/CD, Redis e Celery), intercalados com capítulos de engenharia e arquitetura, sobre design de software, segurança ofensiva, performance e boas práticas.

Para quem é

Desenvolvedores que desejam não apenas “fazer funcionar”, mas entender a fundo como construir sistemas resilientes, seguros e escaláveis. Se você é iniciante, os primeiros capítulos dão uma base sólida; se já tem experiência, os capítulos finais sobre Docker, testes de carga, segurança ofensiva e Arquitetura Limpa vão desafiá-lo a elevar o nível técnico.

Pré-requisitos

Conhecimento básico em Python e Django (o livro Django de A a Z ajuda a reforçar) e familiaridade com a linha de comando.

Django REST FrameworkJWTSerializaçãoDockerCeleryRedisOpenAPI e SwaggerArquitetura limpa

O que você vai aprender

  • Fundamentos: serialização, ViewSets, Routers e autenticação JWT.
  • Qualidade: testes automatizados (unitários e integração), CI/CD e Clean Code.
  • Infraestrutura: Docker, Docker Compose e preparação para cloud.
  • Performance: caching com Redis, throttling, paginação e otimização de consultas (N+1).
  • Segurança: proteção contra ataques comuns (OWASP), permissões personalizadas e boas práticas de mercado.

Sumário

Toque em um capítulo para ver as seções.

Parte 1: Configuração do ambiente
1O universo das APIs: da origem à conectividade global
  • O que é, afinal, uma API?
  • Uma breve história da integração
  • Arquitetura de Software: do monólito aos microsserviços
  • O protocolo da web: HTTP em profundidade
  • REST: as 6 restrições arquiteturais (constraints)
2Configuração do Python
  • Instalando o Python e suas dependências
  • Escolhendo uma IDE
  • Testando o ambiente para começar
3Configurando o projeto Django
  • Instalando o Django
  • Criando o projeto
  • Sobre o projeto
  • Arquivos de configuração do projeto
4Nosso primeiro run
  • Criando as models do projeto
  • Configurando o Django REST Framework
Parte 2: O essencial do Django REST Framework
5Serialização
  • Serializando as models
  • Campos e argumentos da classe Serializer
6Validators: validações no serializador
  • Tipos de validators
  • Padrões avançados de validators
  • Criando validators customizados
7Autenticação JWT e autorização no Django REST Framework
  • Autenticação JWT no DRF
  • Endpoint de login com JWT
  • Customizando o login
8Views e paginação: criando nossas views no Django REST Framework
  • Antes de começar
  • Model views
  • Generic views
  • Paginação
9Automatizando processos com signals
  • O cenário
  • Criando nossos sinais em uma estrutura organizacional
  • Registrando os sinais na aplicação
  • Testando a automação
  • Aprofundando em signals (teoria avançada)
Parte 3: Deploy e outros recursos avançados do Django REST Framework
10Testes unitários
  • Exemplos de testes
  • Como executar os testes
  • Criando mais testes para nosso projeto
  • Indo além: testes avançados
11Documentação de APIs com OpenAPI e Swagger
  • Documentando APIs no Django REST Framework
  • Personalizando a documentação
12Preparando seu projeto para o Docker
  • Passo a passo: criando o Dockerfile
  • Passo a passo: criando o docker-compose.yml
  • Instalando o Docker no seu computador
  • Como rodar o projeto com Docker
  • Dicas avançadas
  • Bônus: fazendo o deploy da sua API
13Monitoramento e logging em APIs Django REST
  • Configurando logging no Django
  • Registrando logs na sua API
  • Métricas em sua API: integrando Prometheus ao Django
  • Monitorando erros com Sentry
  • Boas práticas de monitoramento e logging
14Teste de estresse com Locust
  • Locust
  • Executando testes visualmente via interface web
  • Estudos de caso
15Streaming e WebSocket
  • O que é streaming?
  • Mãos na massa: exportação de produtos via streaming
  • O que é WebSocket?
  • Mãos na massa: notificações de estoque em tempo real
  • Dicas para projetos reais
16Recursos assíncronos e background tasks com Celery
  • Por que processamento assíncrono?
  • O que é o Celery?
  • Mãos na massa: implementando o Celery
  • Automatizando no Docker Compose (dica avançada)
  • Monitoramento (opcional)
Parte 4: Arquitetura, segurança e outros recursos extras
17Arquitetura Limpa e boas práticas: a arte da Engenharia de Software no Django
  • Onde mora a lógica de negócios?
  • DRY (Don't Repeat Yourself) de verdade
  • Tratamento de erros elegante (Exception Handling)
  • Segurança e controle: Throttling
  • Organização de código e “Code Smells”
18Segurança ofensiva e otimização extrema: o nível Principal Engineer
  • Segurança: além do básico
  • Performance: o gargalo invisível
  • Caching com Redis: velocidade da luz
AApêndice A: cheat sheet (folha de cola)
  • Docker e Docker Compose
  • Django (gerenciamento)
  • HTTP status codes (os essenciais)
  • Django REST Framework (DRF)
  • Comandos de teste (Pytest/Unittest)
BApêndice B: o caminho para Staff Engineer e Principal Engineer (roadmap)
Sumário completo na Casa do Código
Tiago Silva

Tiago Silva

Graduado em Análise e Desenvolvimento de Sistemas, pós-graduado em Engenharia de Software e em Desenvolvimento Back-end, com MBA em Gestão de Projetos pela USP. Professor universitário, atualmente trabalha como Analista de Sistemas. Especialista em Python, Java e JavaScript.

LinkedIn
Do mesmo autorConheça outras obrasLivros sobre frameworks web em Python, pela Casa do Código.
Ver a coleção Python de A a Z