Julia Elman e Mark Lavin. Novatec



Documentos relacionados
Novatec Editora Ltda. [2014].

Design Centrado no Usuário

Primeiros Passos com o Raspberry Pi

Adrian Mejia. Novatec

Jonathan Stark Brian Jepson

Ademir C. Gabardo. Novatec

Brandon Rhodes John Goerzen

Pete Goodliffe. Novatec

Desenvolvimento de Grandes Aplicações Web

David Hows Peter Membrey Eelco Plugge

Aprendendo Programação. ios. Alasdair Allan. Novatec

Novatec Editora Ltda

Harrison Kinsley Will McGugan

Google Analytics Justin Cutroni

André Gugliotti. Novatec

Construindo Aplicações Node com MongoDB e Backbone Mike Wilson

Introdução ao GitHub Peter Bell e Brent Beer

Crie Seu Próprio Site

Zend. Framework. Componentes Poderosos para PHP. Flávio Gomes da Silva Lisboa. Novatec

PDF Explicado John Whitington

Padrões de Projeto em PHP

Criando Aplicações PHP com. Zend e Dojo. Flávio Gomes da Silva Lisboa. Novatec

A Arte de SEO. Eric Enge, Stephan Spencer, Jessie Stricchiola e Rand Fishkin Introdução de John Battelle. Novatec

Novatec Editora Ltda

Pramod J. Sadalage Martin Fowler

Aprendendo. Unix no OS X. Mountain Lion. Mergulhando no Terminal e no Shell. Dave Taylor. Novatec

Shyam Seshadri & Brad Green

Ryan Mitchell. Novatec

jquery Cookbook Comunidade de Desenvolvedores jquery

Primeiros Passos com Sensores Kimmo Karvinen Tero Karvinen

Larry Ullman. Novatec

Hélio Engholm Jr. Novatec

Josh Pauli Revisão técnica Scott White. Novatec

Ricardo R. Lecheta. Novatec

Allen B. Downey. Novatec

Miguel Grinberg. Novatec

Laboratórios de Tecnologias. Cisco. em Infraestrutura de Redes. Samuel Henrique Bucke Brito. Novatec

Sumário. Prefácio Capítulo 1 Orientação e primeiras etapas Capítulo 2 Dados: trabalhando com texto e números... 40

Introdução às. Expressões Regulares. Michael Fitzgerald. Novatec

Guia Prático Richard E. Silverman

Adail Henrique Spínola Horst Aécio dos Santos Pires André Luis Boni Déo. Novatec

Lojas Virtuais com. Magento. André Nobrega Gugliotti. Novatec

Desenvolvendo Websites com PHP

Allan Liska e Timothy Gallo. Novatec

Criando Relatórios com PHP

Criando Aplicações Gráficas com PHP

Primeiros Passos com o Arduino

Rails 3 Básico Cloves Carneiro Jr. Rida Al Barazi

Excel Avançado. 2ª Edição. Antonio Fernando Cinto Wilson Moraes Góes. Novatec

Josh Lockhart. Novatec

Scrum em Ação. Gerenciamento e Desenvolvimento Ágil de Projetos de Software. Andrew Pham Phuong-Van Pham. Novatec

Josh Lockhart. Novatec

Simon Holmes. Novatec

Equipes de Software. Um guia para o desenvolvedor de software se relacionar melhor com outras pessoas. Brian W. Fitzpatrick Ben Collins-Sussman

Indira Knight. Novatec

Laboratórios de Tecnologias. Cisco. em Infraestrutura de Redes. 2a Edição. Samuel Henrique Bucke Brito. Novatec

Copyright 2008, 2013 da Novatec Editora Ltda.

marketing ágil Utilização de Metodologias Ágeis em Projetos de Marketing Michelle Accardi-Petersen Novatec

Defenda sua base com circuitos simples, Arduino e Raspberry Pi

Karl Matthias Sean P. Kane

Benjamin Bengfort Jenny Kim

Jody Culkin e Eric Hagan

WordPress 3 Básico Stephanie Leary

Desenvolvendo para. Windows 8. Aprenda a desenvolver aplicativos para Windows Phone 8 e Windows 8. Ricardo R. Lecheta. Novatec

Nelson Glauber de Vasconcelos Leal

Construindo Aplicações Node com MongoDB e Backbone Mike Wilson

JavaScript. de Alto Desempenho. Nicholas C. Zakas. Novatec

Camila Porto. Novatec

2ª EDIÇÃO. André Milani. Novatec

Semmy Purewal. Novatec

Aprendendo Cocoa com Objective-C Paris Buttfield-Addison Jonathon Manning

Primeiros Passos com o Netduino

Google Android para Tablets

JQuery. A Biblioteca do Programador JavaScript. 3ª Edição Revisada e ampliada. Maurício Samy Silva. Novatec

Mineração de dados da web social Matthew A. Russell

Luiz Carlos Querino Filho

MARKETING DIGITAL NA ERA. Martha Gabriel CONCEITOS, PLATAFORMAS E ESTRATÉGIAS. Novatec

Shelley Powers. Novatec

Ricardo Lino Olonca. Novatec

Desenvolvendo Websites com PHP

Desenvolvimento de Grandes Aplicações Web

Gerenciamento. de projetos. Bart Gerardi. Novatec. Como evitar problemas previsíveis para o sucesso do projeto

Padrões JavaScript Stoyan Stefanov

Ricardo R. Lecheta. Novatec

Sumário. Parte I Elementos essenciais Sobre o autor Sobre o revisor técnico Prefácio... 14

Edgar Gomes de Abreu

Ryan Mitchell. Novatec

As Leis Fundamentais do Projeto de Software

Kenneth Reitz Tanya Schlusser

Jarrod Overson e Jason Strimpel

Andreas Wittig Michael Wittig

João Eriberto Mota Filho

Keith Wood. Apresentação de Dave Methvin. Novatec

André Gugliotti. Novatec

William Pereira Alves

Guia Definitivo de. . DJ Waldow Jason Falls. Tradução Aline Naomi Sassaki. Novatec

Dinâmica dos fluidos

Expressões Regulares Cookbook Jan Goyvaerts Steven Levithan

Transcrição:

Julia Elman e Mark Lavin Novatec

[2015] Novatec Editora Ltda Authorized Portuguese translation of the English edition of Lightweight Django, ISBN 9781491945940 2015 Julia Elman and Mark Lavin. This translation is published and sold by permission of O Reilly Media, Inc., which owns or controls all rights to publish and sell the same. Tradução em português autorizada da edição em inglês da obra Lightweight Django, ISBN 9781491945940 2015 Julia Elman e Mark Lavin. Esta tradução é publicada e vendida com a permissão da O'Reilly Media, Inc., que detém ou controla todos os direitos para publicação e venda desta obra. Novatec Editora Ltda. 2015. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer processo, sem prévia autorização, por escrito, do autor e da Editora. Editor: Rubens Prates Tradução: Lúcia Kinoshita Revisão gramatical: Viviane Oshima Assistente editorial: Priscila A. Yoshimatsu Editoração eletrônica: Carolina Kuwabata ISBN: 978-85-7522-424-3 OG20150318 Histórico de impressões: Março/2015 Primeira edição Novatec Editora Ltda. Rua Luís Antônio dos Santos 110 02460-000 São Paulo, SP Brasil Tel.: +55 11 2959-6529 Email: novatec@novatec.com.br Site: www.novatec.com.br Twitter: twitter.com/novateceditora Facebook: facebook.com/novatec LinkedIn: linkedin.com/in/novatec

Sumário Prefácio...9 Pré-requisitos...17 Capítulo 1 O menor projeto Django do mundo...21 Hello Django...22 Criando a view...22 Os padrões de URL...23 As configurações...23 Executando o exemplo...25 Melhorias...27 Aplicação WSGI...27 Configurações adicionais...29 Template reutilizável...32 Capítulo 2 Aplicação web sem estados...35 Por que sem estados?...36 Aplicações reutilizáveis versus serviços compostos...36 Servidor de placeholders de imagens...37 Views...38 Padrões de URL...39 A view placeholder...40 Manipulação de imagens...42 Adicionando caching...45 Criando a view da página inicial...49 Adicionando configurações para recursos estáticos e templates...49 Template para a página inicial e CSS... 51 Projeto completo...53 5

6 Django Essencial Capítulo 3 Criando um gerador de sites estáticos...57 Criado sites estáticos com o Django...58 O que é prototipação rápida?...58 Layout inicial do projeto...59 Estrutura de arquivos/pastas...59 Configurações básicas... 60 Renderização de páginas...62 Criando nossos templates básicos...62 Gerador de páginas estáticas...64 Estilização básica... 68 Layouts dos protótipos e navegação...70 Gerando conteúdo estático... 77 Configuração... 77 Comando personalizado de gerenciamento...78 Criando uma única página...80 Servindo e compactando arquivos estáticos...82 Gerando hashing de nossos arquivos CSS e JavaScript...82 Compactando nossos arquivos estáticos...84 Gerando conteúdos dinâmicos...87 Atualizando nossos templates...87 Adicionando metadados... 90 Capítulo 4 Criando uma API REST...97 Django e REST...98 Mapa de dados de um quadro de tarefas Scrum...99 Layout inicial do projeto...100 Configurações do projeto...101 Sem Django admin?... 103 Modelos... 103 Criando o design da API... 107 Endpoints para sprints...108 Endpoints para tarefas e usuários...110 Fazendo a conexão com o roteador...113 Ligando os recursos...114 Testando a API...117 Usando a API navegável...118 Adicionando filtragem... 122 Adicionando validações... 128 Usando um cliente Python... 132 Próximos passos... 136

Sumário 7 Capítulo 5 Django no lado cliente com Backbone.js...137 Visão geral rápida do Backbone... 139 Criando os arquivos de seu projeto... 140 Dependências do JavaScript...141 Organização dos arquivos de sua aplicação Backbone... 144 Conectando o Backbone ao Django...147 Roteamento do Backbone no lado cliente... 150 Criando uma view básica para a página inicial... 150 Definindo um roteador mínimo...151 Usando _.template do Underscore.js... 153 Implementando a autenticação de usuários... 156 Criando um modelo de sessão... 157 Criando uma view de login... 162 View genérica para formulários... 170 Autenticando rotas...174 Criando uma view de cabeçalho... 176 Capítulo 6 Aplicação web single-page...187 O que são aplicações web single-page?... 187 Descobrindo a API... 188 Acessando a API... 188 Personalização de modelos... 190 Personalização de coleções...191 Criando a nossa página inicial... 193 Exibindo os sprints atuais... 193 Criando novos sprints... 196 Página de detalhes do sprint...200 Renderizando o sprint... 201 Roteando os detalhes do sprint...203 Usando o estado do cliente...204 Renderizando as tarefas...207 AddTaskView... 216 Tarefas CRUD... 221 Renderizando tarefas em um sprint...222 Atualizando as tarefas...227 Recursos de edição inline...231

8 Django Essencial Capítulo 7 Django em tempo real...236 APIs de tempo real do HTML5... 237 Websockets... 237 Server-sent Events (SSEs)...238 WebRTC...238 Websockets com o Tornado... 239 Introdução ao Tornado...241 Registrar-se para receber mensagens...248 Comunicação nos clientes... 252 Exemplo mínimo... 252 Wrapper para o socket... 255 Conexão com o cliente... 259 Enviando eventos a partir do cliente...262 Tratando eventos do cliente...270 Atualizando o estado da tarefa...273 Capítulo 8 Comunicação entre Django e Tornado...279 Recebendo atualizações no Tornado...279 Enviando atualizações do Django... 281 Tratando atualizações no cliente...284 Melhorias no servidor...286 Robustez nos registros de clientes...286 Autenticação no websocket...292 Melhorias nas atualizações...297 Atualizações seguras...300 Servidor de websocket definitivo...304 Sobre os autores...310 Colofão...311