1. Introdução ao Python
    1. História
    2. Características
    3. Filosofia
    4. Biblioteca Padrão
    5. Anatomia do programa Python
    6. Módulos
    7. Funções
    8. Comandos de controle
    9. Tipos
    10. Estruturas de dados
    11. Comunidades
  2. Classes no Python
    1. O comando class
    2. Métodos
    3. Instância
    4. Construtores
    5. Herança
    6. Meta-Classes
    7. Packing e Unpacking
  3. Introdução ao Django
    1. Como a Web Funciona
    2. Requests e Responses
    3. História
    4. Arquitetura
    5. Filosofias
    6. Evolução do Framework
  4. Instalação do Python e do Django
    1. Windows
    2. Linux
    3. Mac
  5. Primeiros Passos
    1. Iniciando um projeto Django
    2. Anatomia de um projeto Django
    3. Configurando o Banco de Dados
    4. Uma Django App Simples
    5. Fluxo da Requisição
    6. Mídias estáticas
  6. Templates
    1. Configuração
    2. Linguagem de templates do Django
    3. Variáveis de Template
    4. Template Tags
    5. Template Filters
    6. Contexto
    7. Renderização
  7. Extendendo Templates
    1. Herança de Templates
    2. Blocos
    3. Criando Template Tags
    4. Criando Template Filters
  8. Testes no Django
    1. TestCase
    2. TestClient
    3. Implementando um teste simples
    4. Rodando os testes
    5. TestRunner
    6. Mantendo os testes organizados
  9. Urls Elegantes
    1. Patterns
    2. Organizando com includes
    3. Namespaces
    4. Nomes para Rotas
    5. Urls Dinâmicas
      1. Parâmetros Posicionais
      2. Parâmetros Nomeados
    6. Expressões Regulares
    7. Um exemplo complexo
    8. URL Resolvers
  10. Views
    1. Características
    2. Organizando fluxos
    3. Lidando com GET e POST
    4. Feedback para o usuário
    5. GenericViews
  11. Envio de email
    1. Backends
    2. Configurações
  1. Introdução ao Django Admin
    1. Ativando o Admin
    2. Como funciona
    3. Customizações simples
  2. Django Admin Avançado
    1. Custom Actions
    2. Custom Views
    3. Custom Urls
    4. Custom Template
    5. Relacionamentos e Inline forms
  3. Introdução à Forms
    1. Papel do Form no projeto
    2. Renderizando um Formulário
    3. Forms e as views
    4. Salvando dados do formulário
  4. Arquitetura do Forms
    1. Form Fields
    2. Form Widgets
    3. Bounded vs Unbounded
    4. Validators
    5. Dados iniciais do Form
    6. Fluxo de validação do Form
    7. Validações complexas
    8. Custom Fields e Widgets
  5. ModelForms
    1. O que são?
    2. Extendendo ModelForms
    3. Salvando dados do formulário
  6. Models
    1. Um model simples
    2. Model Fields
    3. Choices
    4. Comandos de Gerenciamento
    5. Insert e Update
    6. Seleção e Filtro
    7. Lookups
    8. Ordenação
    9. Default Manager
    10. Slicing
    11. Manipulando coleções
    12. Atualizações atômicas
    13. Representações do Modelo
    14. A classe Meta do seu Model
  7. Querysets
    1. O que são?
    2. Api do Orm
    3. Uso eficiente do banco
  8. Relações entre Modelos
    1. Many-To-One
    2. Many-To-Many
    3. One-To-One
    4. Relacionando Entidades
  9. Heranças de Modelos
    1. Abstract Base Class
    2. Multi-Table Inheritance
    3. Proxy
  10. Managers
    1. Managers e Heranças
    2. Custom Managers
    3. Related Managers
  11. Migrações de Dados
    1. Conceitos
    2. Instalando South
    3. Comandos do South
    4. Migração inicial
    5. Migração de Schema
    6. Migração de Dados
  12. Deploy
    1. Configurando NGinx
    2. Configurando seu projeto Django
    3. Conhecendo o Fabric
  13. Viagem ao Código Fonte do Django
    1. Obtendo o código
    2. Organização do Projeto
    3. Se comunicando com a Comunidade
    4. Reportando Bugs
    5. Submetendo Patches

O Instrutor

Henrique Bastos é apaixonado por desenvolvimento de software! Trabalha desenvolvendo sistemas com Python, Django e Métodos Ágeis. Além de atuar constantemente nas comunidades de software organizando eventos e encontros, ministrando palestras, cursos e evangelizando o desenvolvimento sustentável de software, no Brasil e no exterior.

Quando?

As aulas acontecerão das 9h às 13h (horário de Brasília) nos dias:

  • 27 de Maio de 2012 - domingo
  • 03 de Junho de 2012 - domingo
  • 10 de Junho de 2012 - domingo
  • 17 de Junho de 2012 - domingo

Como e Onde?

Aulas são interativas e online utilizando recursos de áudio, vídeo, chat e compartilhamento de tela em tempo real.

Requisitos Técnicos

  • Navegador IE7, Firefox 3 ou Chrome.
  • Plugin Adobe Flash 10 ou superior.
  • Conexão de internet de 512 kbps.