{"product_id":"livro-django-rest","title":"Django Rest Framework de A a Z: Domine o ecossistema das APIs REST com back-ends escaláveis","description":"\u003cp\u003e \u003c\/p\u003e\n\u003ch2 class=\"infoSection-titulo\"\u003eSumário\u003c\/h2\u003e\n\n\u003ch3 class=\"infoSection-titulo\"\u003eParte 1: Configuração do ambiente\u003c\/h3\u003e\n\u003ch3 class=\"infoSection-texto\"\u003e\u003c\/h3\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e1. O universo das APIs: da origem à conectividade global\u003c\/li\u003e\n\u003cli\u003e1.1 O que é, afinal, uma API?\u003c\/li\u003e\n\u003cli\u003e1.2 Uma breve história da integração\u003c\/li\u003e\n\u003cli\u003e1.3 Arquitetura de Software: do monólito aos microsserviços\u003c\/li\u003e\n\u003cli\u003e1.4 O protocolo da web: HTTP em profundidade\u003c\/li\u003e\n\u003cli\u003e1.5 REST: as 6 restrições arquiteturais (constraints)\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e2. Configuração do Python\u003c\/li\u003e\n\u003cli\u003e2.1 Instalando o Python e suas dependências\u003c\/li\u003e\n\u003cli\u003e2.2 Escolhendo uma IDE\u003c\/li\u003e\n\u003cli\u003e2.3 Testando o ambiente para começar\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e3. Configurando o projeto Django\u003c\/li\u003e\n\u003cli\u003e3.1 Instalando o Django\u003c\/li\u003e\n\u003cli\u003e3.2 Criando o projeto\u003c\/li\u003e\n\u003cli\u003e3.3 Sobre o projeto\u003c\/li\u003e\n\u003cli\u003e3.4 Arquivos de configuração do projeto\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e4. Nosso primeiro run\u003c\/li\u003e\n\u003cli\u003e4.1 Criando as models do projeto\u003c\/li\u003e\n\u003cli\u003e4.2 Configurando o Django REST Framework\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3 class=\"infoSection-titulo\"\u003eParte 2: O essencial do Django REST Framework\u003c\/h3\u003e\n\u003ch3 class=\"infoSection-texto\"\u003e\u003c\/h3\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e5. Serialização\u003c\/li\u003e\n\u003cli\u003e5.1 Serializando as models\u003c\/li\u003e\n\u003cli\u003e5.2 Campos e argumentos da classe Serializer\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e6. Validators - Validações no serializador\u003c\/li\u003e\n\u003cli\u003e6.1 Tipos de validators\u003c\/li\u003e\n\u003cli\u003e6.2 Padrões avançados de validators\u003c\/li\u003e\n\u003cli\u003e6.3 Criando validators customizados\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e7. Autenticação JWT e Autorização no Django REST Framework\u003c\/li\u003e\n\u003cli\u003e7.1 Autenticação JWT no DRF\u003c\/li\u003e\n\u003cli\u003e7.2 Endpoint de login com JWT\u003c\/li\u003e\n\u003cli\u003e7.3 Customizando o login\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e8. Views e paginação: criando nossas views no Django REST Framework\u003c\/li\u003e\n\u003cli\u003e8.1 Antes de começar\u003c\/li\u003e\n\u003cli\u003e8.2 Model views\u003c\/li\u003e\n\u003cli\u003e8.3 Generic views\u003c\/li\u003e\n\u003cli\u003e8.4 Paginação\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e9. Automatizando processos com signals\u003c\/li\u003e\n\u003cli\u003e9.1 O cenário\u003c\/li\u003e\n\u003cli\u003e9.2 Criando nossos sinais em uma estrutura organizacional\u003c\/li\u003e\n\u003cli\u003e9.3 Registrando os sinais na aplicação\u003c\/li\u003e\n\u003cli\u003e9.4 Testando a automação\u003c\/li\u003e\n\u003cli\u003e9.5 Aprofundando em signals (teoria avançada)\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3 class=\"infoSection-titulo\"\u003eParte 3: Deploy e outros recursos avançados do Django REST Framework\u003c\/h3\u003e\n\u003ch3 class=\"infoSection-texto\"\u003e\u003c\/h3\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e10. Testes unitários\u003c\/li\u003e\n\u003cli\u003e10.1 Exemplos de testes\u003c\/li\u003e\n\u003cli\u003e10.2 Como executar os testes\u003c\/li\u003e\n\u003cli\u003e10.3 Criando mais testes para nosso projeto\u003c\/li\u003e\n\u003cli\u003e10.4 Indo além: testes avançados\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e11. Documentação de APIs com OpenAPI e Swagger\u003c\/li\u003e\n\u003cli\u003e11.1 Documentando APIs no Django REST Framework\u003c\/li\u003e\n\u003cli\u003e11.2 Personalizando a documentação\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e12. Preparando seu projeto para o Docker\u003c\/li\u003e\n\u003cli\u003e12.1 Passo a passo: criando o Dockerfile\u003c\/li\u003e\n\u003cli\u003e12.2 Passo a passo: criando o docker-compose.yml\u003c\/li\u003e\n\u003cli\u003e12.3 Instalando o Docker no seu computador\u003c\/li\u003e\n\u003cli\u003e12.4 Como rodar o projeto com Docker\u003c\/li\u003e\n\u003cli\u003e12.5 Dicas avançadas\u003c\/li\u003e\n\u003cli\u003e12.6 Bônus: fazendo o deploy da sua API\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e13. Monitoramento e logging em APIs Django REST\u003c\/li\u003e\n\u003cli\u003e13.1 Configurando logging no Django\u003c\/li\u003e\n\u003cli\u003e13.2 Registrando logs na sua API\u003c\/li\u003e\n\u003cli\u003e13.3 Métricas em sua API - integrando Prometheus ao Django\u003c\/li\u003e\n\u003cli\u003e13.4 Monitorando erros com Sentry\u003c\/li\u003e\n\u003cli\u003e13.5 Boas práticas de monitoramento e logging\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e14. Teste de estresse com Locust\u003c\/li\u003e\n\u003cli\u003e14.1 Locust\u003c\/li\u003e\n\u003cli\u003e14.2 Executando testes visualmente via interface web\u003c\/li\u003e\n\u003cli\u003e14.3 Estudos de caso\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e15. Streaming e WebSocket\u003c\/li\u003e\n\u003cli\u003e15.1 O que é streaming?\u003c\/li\u003e\n\u003cli\u003e15.2 Mãos na massa: exportação de produtos via streaming\u003c\/li\u003e\n\u003cli\u003e15.3 O que é WebSocket?\u003c\/li\u003e\n\u003cli\u003e15.4 Mãos na massa: notificações de estoque em tempo real\u003c\/li\u003e\n\u003cli\u003e15.5 Dicas para projetos reais\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e16. Recursos assíncronos e background tasks com Celery\u003c\/li\u003e\n\u003cli\u003e16.1 Por que processamento assíncrono?\u003c\/li\u003e\n\u003cli\u003e16.2 O que é o Celery?\u003c\/li\u003e\n\u003cli\u003e16.3 Mãos na massa: implementando o Celery\u003c\/li\u003e\n\u003cli\u003e16.4 8. Automatizando no Docker Compose (dica avançada)\u003c\/li\u003e\n\u003cli\u003e16.5 Monitoramento (opcional)\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3 class=\"infoSection-titulo\"\u003eParte 4: Arquitetura, segurança e outros recursos extras\u003c\/h3\u003e\n\u003ch3 class=\"infoSection-texto\"\u003e\u003c\/h3\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e17. Arquitetura Limpa e boas práticas: a arte da Engenharia de Software no Django\u003c\/li\u003e\n\u003cli\u003e17.1 Onde mora a lógica de negócios?\u003c\/li\u003e\n\u003cli\u003e17.2 DRY (Don't Repeat Yourself) de verdade\u003c\/li\u003e\n\u003cli\u003e17.3 Tratamento de erros elegante (Exception Handling)\u003c\/li\u003e\n\u003cli\u003e17.4 Segurança e controle: Throttling\u003c\/li\u003e\n\u003cli\u003e17.5 Organização de código e \"Code Smells\"\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e18. Segurança ofensiva e otimização extrema: o nível Principal Engineer\u003c\/li\u003e\n\u003cli\u003e18.1 Segurança: além do básico\u003c\/li\u003e\n\u003cli\u003e18.2 Performance: o gargalo invisível\u003c\/li\u003e\n\u003cli\u003e18.3 Caching com Redis: velocidade da luz\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e19. Apêndice A: cheat sheet (folha de cola)\u003c\/li\u003e\n\u003cli\u003e19.1 Docker e Docker Compose\u003c\/li\u003e\n\u003cli\u003e19.2 Django (gerenciamento)\u003c\/li\u003e\n\u003cli\u003e19.3 HTTP status codes (os essenciais)\u003c\/li\u003e\n\u003cli\u003e19.4 Django REST Framework (DRF)\u003c\/li\u003e\n\u003cli\u003e19.5 Comandos de teste (Pytest\/Unittest)\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cul class=\"infoSection-texto\"\u003e\n\u003cli\u003e20. Apêndice B: O caminho para Staff Engineer e Principal Engineer (roadmap)\u003c\/li\u003e\n\u003c\/ul\u003e","brand":"Tiago Silva","offers":[{"title":"E-book","offer_id":67296146587723,"sku":"ebook-djangorest","price":39.9,"currency_code":"BRL","in_stock":true},{"title":"Impresso","offer_id":67296146620491,"sku":"impresso-djangorest","price":69.9,"currency_code":"BRL","in_stock":true},{"title":"E-book + Impresso","offer_id":67296146653259,"sku":"combo-djangorest","price":89.9,"currency_code":"BRL","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0155\/7645\/files\/7a53af44-d67a-4c8e-8541-6d09e2ca013d.jpg?v=1792610457","url":"https:\/\/www.casadocodigo.com.br\/products\/livro-django-rest","provider":"Casa do Codigo","version":"1.0","type":"link"}