Próximas Turmas

Nenhuma turma disponível no momento

Quero mais informações

O que você vai aprender nesse curso

Foco: Desenvolvimento profissional de APIs REST com Django REST Framework e Flask, incluindo consumo das APIs em aplicações Vue 3.

O curso Python Web Avançado é a continuação direta do curso de Python Web e tem como objetivo capacitar o aluno a desenvolver APIs REST completas e profissionais utilizando os frameworks Django REST Framework e Flask.

Durante o treinamento, o aluno aprenderá desde a preparação do ambiente, passando por construção de APIs robustas com autenticação, autorização, organização modular e banco de dados, até o consumo dessas APIs em uma aplicação moderna feita com Vue 3 + Axios.

Ao final, o participante será capaz de desenvolver aplicações completas no padrão FullStack, conectando frontend moderno com backend Python de forma segura e escalável.

Conteúdo do curso

Módulo 1 — Ambiente de Desenvolvimento (4h)

1.1 — Instalação e Configurações Iniciais

  • Instalação do Python 3.11
  • Configuração de variáveis de ambiente
  • Verificação do ambiente via terminal
  • Instalação e atualização do pip
  • Criação e configuração de ambientes virtuais (virtualenv / venv)

1.2 — IDEs e Ferramentas Profissionais

  • Instalação do PyCharm Community
  • Configuração inicial e interpretador Python
  • Alternativa: VS Code + Extensão Python

1.3 — Frameworks e Dependências

  • Instalação do Django 4.2 LTS
  • Instalação do Flask 3.x
  • Instalação de bibliotecas com pip install
  • Gerenciamento de dependências com requirements.txt

Módulo 2 — Django REST Framework (16h)

2.1 — Instalação, Configuração e Estrutura do Projeto (4h)

  • Criação do projeto Django
  • Estrutura inicial: django-admin startproject
  • Criação de apps: python manage.py startapp
  • Configuração completa do Django REST Framework
  • Uso do Django ORM:
    • Modelos
    • Relacionamentos
    • Migrações

2.2 — Serializers, Views e APIs Baseadas em Recursos (5h)

  • Serializers e ModelSerializers
  • Validações e serializers aninhados
  • APIView, Generic Views e ViewSets
  • Customização de métodos HTTP
  • Rotas com SimpleRouter e DefaultRouter
  • Estruturação de endpoints versionados

2.3 — Autenticação, Autorização e Segurança (3h)

  • Token Authentication
  • JWT com SimpleJWT
  • Login, Refresh Token e proteção de rotas
  • Permissões básicas e personalizadas
  • Segurança: CORS, CSRF e boas práticas em APIs REST

2.4 — Documentação e Testes de API (2h)

  • Documentação automática com Swagger / drf-spectacular
  • Geração de schemas OpenAPI
  • Testes de API com Postman, HTTPie e APIClient

Módulo 3 — APIs com Flask (16h)

3.1 — Estrutura da Aplicação e Criação de Endpoints (4h)

  • Estruturação profissional de diretórios
  • Criação de aplicações Flask
  • Rotas e métodos HTTP
  • Manipulação de requisições
  • Tratamento de exceções
  • Organização com Blueprints e módulos

3.2 — Banco de Dados com SQLAlchemy e Migrations (3h)

  • Modelagem com SQLAlchemy
  • CRUD completo
  • Flask-Migrate: criação e execução de migrations
  • Uso de SQLite, MySQL ou PostgreSQL

3.3 — Autenticação, Autorização e Segurança (3h)

  • JWT com flask-jwt-extended
  • Login, proteção de rotas e refresh token
  • Uso de CORS
  • Padrões de resposta, organização de endpoints e boas práticas

Módulo 4 — Integração com APIs REST usando Vue 3 (8h)

4.1 — Fundamentos e Estrutura do Projeto

  • Criação de projeto Vue 3 com Vite
  • Estrutura de pastas e configuração inicial

4.2 — Requisições HTTP com Axios

  • Instalação e configuração do Axios
  • Instância global de API
  • Tratamento de erros e respostas

4.3 — Rotas e Navegação

  • Configuração do Vue Router
  • Criação de rotas públicas
  • Navegação programática

4.4 — Serviços e Integração

  • Criação do Service Layer
  • Manipulação e normalização de dados
  • Consumo de APIs Flask e Django

4.5 — Componentes de Interface

  • Criação de componentes Vue
  • Props, emits, reatividade e Composition API
  • Criação de modais

4.6 — Organização de Dados e DTOs

  • Criação de DTOs
  • Validação e conversão de dados enviados e recebidos

4.7 — Telas CRUD

  • Cadastros (Create)
  • Listagens (Read)
  • Integração real com APIs
  • Tratamento de feedback e status visual