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

Documentos relacionados
Introdução ao GitHub Peter Bell e Brent Beer

Primeiros Passos com o Netduino

Novatec Editora Ltda

Primeiros Passos com Sensores Kimmo Karvinen Tero Karvinen

Ryan Mitchell. Novatec

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

Miguel Grinberg. Novatec

Shyam Seshadri & Brad Green

Benjamin Bengfort Jenny Kim

Karl Matthias Sean P. Kane

Allen B. Downey. Novatec

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

Allan Liska e Timothy Gallo. Novatec

André Gugliotti. Novatec

Shelley Powers. Novatec

A Arte de Escrever Programas Legíveis

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

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

Guia Prático Richard E. Silverman

Jody Culkin e Eric Hagan

Primeiros Passos com o Arduino

Indira Knight. Novatec

William Pereira Alves

Expressões Regulares Cookbook Jan Goyvaerts Steven Levithan

Semmy Purewal. Novatec

Chris Binnie. Novatec

Raspberry Pi Manual do Usuário

Primeiros Passos com o Arduino Massimo Banzi

Desenvolvimento de Grandes Aplicações Web

Kenneth Reitz Tanya Schlusser

Objective-C Fundamental Christopher K. Fairbairn Johannes Fahrenkrug Collin Ruffenach

Guia Mangá. Álgebra Linear. Shin Takahashi, Iroha Inoue e Trend-Pro Co., Ltd. novatec

Arduino Básico Michael McRoberts

Jonathan Stark Brian Jepson

Design Centrado no Usuário

Ben Vinegar Anton Kovalyov

Julia Elman e Mark Lavin. Novatec

Hélio Engholm Jr. Novatec

Aditya Y. Bhargava. Novatec

Ademir C. Gabardo. Novatec

Sérgio de Oliveira. Novatec

Aaron Newcomb. Novatec

WordPress 3 Básico Stephanie Leary

Primeiros Passos com o Raspberry Pi

Edécio Fernando Iepsen

jquery Mobile Desenvolva aplicações web para dispositivos móveis com HTML5, CSS3, AJAX, jquery e jquery UI Maurício Samy Silva Novatec

Web Interativa com Ajax e PHP

Análise de Regressão

Arduino Básico. 2ª edição. Michael McRoberts. Novatec

Osvaldo Santana Thiago Galesi

jquery Mobile Desenvolva aplicações web para dispositivos móveis com HTML5, CSS3, AJAX, jquery e jquery UI 2a Edição Maurício Samy Silva Novatec

Matheus Marabesi Michael Douglas

Novatec Editora Ltda. [2014].

Luiz Eduardo Borges. Novatec

Simon Holmes. Novatec

Ademir Cristiano Gabardo. Novatec

Adrian Mouat. Novatec

Google Analytics Justin Cutroni

Criando Relatórios com PHP Pablo Dall Oglio

Pedro Monteiro da Silva Eleutério Marcio Pereira Machado. Novatec

Novatec Editora Ltda

PDF Explicado John Whitington

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

Adrian Pruteanu. Novatec

Novatec Editora Ltda

A Arte de Escrever Programas Legíveis

Robson Santos da Silva

Padrões de Projeto em PHP

Guia Mangá Circuitos Eletrônicos

Guia Mangá. Microprocessadores. Michio Shibuya, Takashi Tonagi e Office Sawa. Novatec

Jarrod Overson e Jason Strimpel

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

Desenvolvendo Websites com PHP

PHP. Programando com Orientação a Objetos. Pablo Dall Oglio. Novatec

Ademir Ribeiro dos Passos

Aravind Shenoy Anirudh Prabhu

Adriano Pataro. Novatec

Ademir Cristiano Gabardo. Novatec

Introdução ao GitHub Peter Bell e Brent Beer

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

Pramod J. Sadalage Martin Fowler

Maurício Samy Silva. Novatec

4ª Edição Pablo Dall Oglio

Guia Mangá FISIOLOGIA. Etsuro Tanaka, Keiko Koyama, e Becom Co., Ltd. Novatec

AngularJS. Uma abordagem prática e objetiva. Michael Henrique R. Pereira. Novatec

Métricas. Como melhorar os principais resultados de sua empresa. Martin Klubeck. Novatec

Murillo Lo Visco. Novatec

2ª Edição Cláudio Torres

Programando para. iphone e ipad. Aprenda a construir aplicativos para o ios. André Milani. Novatec

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

3ª Edição Nilo Ney Coutinho Menezes

Jessey Bullock Jeff T. Parker

Guia Mangá Motores elétricos

Editor: Rubens Prates Revisão gramatical: Marta Almeida de Sá Editoração eletrônica: Carolina Kuwabata Assistente editorial: Priscila A.

Chris Goward. Novatec

Roberto Cohen. Novatec

4ª Edição Revisada e Ampliada Aurelio Marinho Jargas

Jonathan Weber e a equipe da LunaMetrics

Blender 3D jogos e animações interativas Allan Brito

Transcrição:

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

Authorized Portuguese translation of the English edition of titled Building Node Applications with MongoDB and Backbone ISBN 9781449337391 2012 Mike Wilson. This translation is published and sold by permission of O'Reilly Media, Inc., the owner of all rights to publish and sell the same. Tradução em português autorizada da edição em inglês da obra Building Node Applications with MongoDB and Backbone ISBN 9781449337391 2012 Mike Wilson. Esta tradução é publicada e vendida com a permissão da O'Reilly Media, Inc., detentora de todos os direitos para publicação e venda desta obra. Novatec Editora Ltda. 2013. 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: Rafael Zanolli Revisão gramatical: Marta Almeida de Sá Editoração eletrônica: Carolina Kuwabata ISBN: 978-85-7522-341-3 Histórico de impressões: Janeiro/2013 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 Fax: +55 11 2950-8869 E-mail: 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 Parte I Apresentação do Node.js, do Backbone.js e do MongoDB...15 Capítulo 1 Introdução e visão geral...16 Construção de uma rede social... 17 Modelo-Visão-Controlador (MVC)...18 JavaScript puro...19 Capítulo 2 Node.js...21 Instalação do Node.js...22 Express...22 Templates...25 Eventos...28 Socket.io... 31 Módulos e CommonJS...34 Capítulo 3 Backbone.js...36 Modelo...37 Visão...38 Template de visão...40 Coleção...42 Sync...43 Router e histórico...43 5

6 Construindo Aplicações Node com MongoDB e Backbone Capítulo 4 MongoDB...45 Acesso aos dados...45 Escrita...47 Consultas...50 Índices...52 MapReduce...54 Trabalhando com o Node.js...56 Acesso concorrente...57 Parte II Construção de uma rede social...61 Capítulo 5 Configuração do projeto...62 Estrutura de diretórios...63 Listagem de arquivos...63 Definição de pacote...65 Servidor web... 66 Template de índice...69 JavaScript da aplicação...70 Classe da aplicação...72 Objeto de visão de índice...73 Capítulo 6 Autenticação...74 Conta...74 Roteamento...78 Verificação de autenticação...79 Manipulador de autenticação... 81 Registro...83 Template de registro...83 Manipulador de registro... 86 Login...87 Template de login...87 Manipulador de login...89 Senha esquecida... 91 Template de senha esquecida... 91

Sumário 7 Manipulador de senha esquecida...93 Redefinição de senha...95 Templates de redefinição de senha...95 Manipulador de redefinição de senha...97 Reunindo todos os elementos...97 Node.js...98 Capítulo 7 Interface de usuário...102 Detalhes da conta... 103 Template de detalhes da conta... 103 Manipulador de detalhes da conta... 105 Lista de contatos...106 Fluxo de atividade... 107 Template de fluxo de atividade... 107 Manipulador de fluxo de atividade... 111 Modelo de dados...113 Reunindo todos os elementos...117 Backbone...117 Node.js...119 Capítulo 8 Fazendo amizades...124 Lista de contatos... 124 Template de lista de contatos... 124 Manipulador de lista de contatos... 130 Inclusão de contato...131 Template de inclusão de contato...131 Manipulador de inclusão de contato... 133 Remoção de contato... 136 Remoção de template de contato... 137 Manipulação de remoção de contato... 137 Comentários... 140 Template de comentários... 140 Manipulador de comentário... 143

8 Construindo Aplicações Node com MongoDB e Backbone Reunindo todos os elementos... 145 Backbone... 145 Node.js... 148 Capítulo 9 Bate-papo...160 Refatoração...160 Conectando-se ao servidor de bate-papo...161 Backbone... 163 Node.js...166 Envio e recebimento de mensagens de bate-papo...168 Backbone... 170 Node.js... 176 Reunindo todos os elementos... 177 Backbone... 177 Node.js...181 Capítulo 10 Atividades em tempo real...193 Inclusão de eventos personalizados... 193 Disparando eventos... 194 Inclusão de ouvintes... 195 Notificação de login de contato... 197 Backbone.js... 197 Node.js...200 Atualizações de status...202 Backbone.js...202 Node.js...206 Reunindo todos os elementos...207 Backbone.js...208 Node.js...220 Arquivos estáticos... 235 Glossário...238