Programação web com Node e Express
Beneficiando-se da stack JavaScript
Descrição do livro
Construa aplicações web dinâmicas com o Express, um componente-chave da stack de desenvolvimento Node/JavaScript. Nesta edição atualizada, o autor Ethan Brown ensina os fundamentos do Express 5 percorrendo o desenvolvimento de uma aplicação. Este guia prático aborda de tudo, da renderização no lado do servidor ao desenvolvimento de uma API adequada para uso em aplicativos de página única (SPAs).
O Express conseguiu chegar a um equilíbrio entre um framework robusto e a ausência de framework, permitindo-nos fazer escolhas livres para nossa arquitetura. Engenheiros front-end e back-end familiarizados com JavaScript também aprenderão práticas recomendadas para a construção de aplicações web de várias páginas e híbridos com o Express. Compre este livro e descubra novas maneiras de olhar para o desenvolvimento web.
Ver menos ▲Sumário
Sumário
- Prefácio
- Capítulo 1 ■ Introduzindo o Express
- A revolução do JavaScript
- Introduzindo o Express
- Aplicações do lado do servidor e do lado do cliente
- Uma breve história do Express
- Node: Um novo tipo de servidor web
- Ecossistema do Node
- Licenciamento
- Conclusão
- Capítulo 2 ■ Introdução ao Node
- Obtendo o Node
- Usando o terminal
- Editores
- npm
- Um servidor web simples com o Node
- Hello World
- Programação baseda em eventos
- Roteamento
- Servindo recursos estáticos
- A caminho do Express
- Capítulo 3 ■ Economizando tempo com o Express
- Scaffolding
- Site da Meadowlark Travel
- Etapas iniciais
- Views e Layouts
- Arquivos e views estáticos
- Conteúdo dinâmico em views
- Conclusão
- Capítulo 4 ■ Arrumando a casa
- Estrutura de arquivos e diretórios
- Melhores práticas
- Controle de versões
- Como usar o Git com este livro
- Caso esteja acompanhando por conta própria
- Caso esteja acompanhando com o repositório oficial
- Pacotes npm
- Metadados do projeto
- Módulos Node
- Conclusão
- Capítulo 5 ■ Garantia da qualidade
- Plano de QA
- QA: Vale a pena?
- Lógica versus apresentação
- Tipos de testes
- Visão geral das técnicas de QA
- Instalando e configurando o Jest
- Teste unitário
- Mocking
- Refatorando a aplicação para melhorar a testabilidade
- Criando nosso primeiro teste
- Manutenção do teste
- Cobertura de código
- Teste de integração
- Linting
- Integração contínua
- Conclusão
- Capítulo 6 ■ Objetos de requisição e resposta
- As partes de uma URL
- Métodos da requisição HTTP
- Cabeçalhos de requisição
- Cabeçalhos de resposta
- Tipos de mídia de internet
- Corpo da requisição
- O objeto de requisição
- Objeto de resposta
- Obtendo mais informações
- Fazendo um resumo
- Renderizando conteúdo
- Processando formulários
- Fornecendo uma API
- Conclusão
- Capítulo 7 ■ Templating com o Handlebars
- Não há regras absolutas exceto essa
- Selecionando um engine de template
- Pug: uma abordagem diferente
- Aspectos básicos do Handlebars
- Comentários
- Blocos
- Templates do lado do servidor
- Views e Layouts
- Usando (ou não) layouts no Express
- Seções
- Partials
- Aperfeiçoando seus templates
- Conclusão
- Capítulo 8 ■ Manipulação de formulários
- Enviando dados do cliente para o servidor
- Formulários HTML
- Codificando
- Diferentes abordagens para a manipulação de formulários
- Manipulação de formulários com o Express
- Usando fetch para enviar dados de formulário
- Uploads de arquivos
- Uploads de arquivo com fetch
- Melhorando a UI de upload de arquivo
- Conclusão
- Capítulo 9 ■ Cookies e sessões
- Exteriorizando credenciais
- Cookies no Express
- Examinando os cookies
- Sessões
- Armazenamentos na memória
- Usando sessões
- Usando sessões para implementar mensagens flash
- Para que devemos usar as sessões
- Conclusão
- Capítulo 10 ■ Middleware
- Princípios do middleware
- Exemplos de middleware
- Middleware comum
- Middleware de terceiros
- Conclusão
- Capítulo 11 ■ Enviando emails
- SMTP, MSAs e MTAs
- Recebendo emails
- Cabeçalhos dos emails
- Formatos dos emails
- Email HTML
- Nodemailer
- Enviando emails
- Enviando emails para vários destinatários
- Opções melhores para o envio de email em massa
- Enviando emails HTML
- Imagens em emails HTML
- Usando views para enviar emails HTML
- Encapsulando a funcionalidade de uso de emails
- Conclusão
- Capítulo 12 ■ Preocupações de produção
- Ambientes de execução
- Configuração específica do ambiente
- Executando seu processo Node
- Dimensionando seu site
- Scaling Out com clusters de aplicativo
- Manipulando exceções não capturadas
- Scaling Out com vários servidores
- Monitorando seu site
- Monitores de uptime de terceiros
- Teste de estresse
- Conclusão
- Capítulo 13 ■ Persistência
- Persistência de sistema de arquivos
- Persistência de nuvem
- Persistência de banco de dados
- Observação sobre o desempenho
- Abstraindo a camada de banco de dados
- Instalando o MongoDB
- Mongoose
- Conexões de banco de dados com o Mongoose
- Criando esquemas e modelos
- Fornecendo os dados iniciais
- Recuperando dados
- Adicionando dados
- PostgreSQL
- Adicionando dados
- Usando um banco de dados para o armazenamento de sessões
- Conclusão
- Capítulo 14 ■ Roteamento
- As rotas e a SEO
- Subdomínios
- Manipuladores de rota são middleware
- Paths de rota e expressões regulares
- Parâmetros de rota
- Organizando as rotas
- Declarando rotas em um módulo
- Agrupando os manipuladores logicamente
- Renderizando views automaticamente
- Conclusão
- Capítulo 15 ■ APIs REST e JSON
- JSON e XML
- Nossa API
- Relato de erros da API
- Compartilhamento de recursos de origem cruzada
- Nossos testes
- Usando o Express para fornecer uma API
- Conclusão
- Capítulo 16 ■ Aplicações de página única
- Breve história do desenvolvimento das aplicações web
- Tecnologias SPA
- Criando um aplicativo React
- Aspectos básicos do React
- A Home Page
- Roteamento
- Página Vacations – design visual
- Página Vacations – integração com o servidor
- Enviando informações para o servidor
- Gerenciamento de estado
- Opções de implantação
- Conclusão
- Capítulo 17 ■ Conteúdo estático
- Considerações de desempenho
- Redes de distribuição de conteúdo
- Design para CDNs
- Site renderizado no servidor
- Aplicações de página única
- Armazenando arquivos estáticos em cache
- Alterando seu conteúdo estático
- Conclusão
- Capítulo 18 ■ Segurança
- HTTPS
- Gerando o próprio certificado
- Usando uma autoridade de certificação gratuita
- Comprando um certificado
- Ativando o HTTPS para seu aplicativo Express
- Observação sobre as portas
- HTTPS e Proxies
- Falsificação de requisição entre sites
- Autenticação
- Autenticação versus autorização
- O problema das senhas
- Autenticação de terceiros
- Armazenando usuários em seu banco de dados
- Autenticação versus registro e a experiência do usuário
- Passport
- Autorização baseada em roles
- Adicionando provedores de autenticação
- Conclusão
- HTTPS
- Capítulo 19 ■ Fazendo a integração com APIs de terceiros
- Mídias sociais
- Plugins de mídias sociais e desempenho do site
- Procurando tuítes
- Renderizando tuítes
- Geocodificação
- Geocodificação com o Google
- Geocodificando seus dados
- Exibindo um mapa
- Dados climáticos
- Conclusão
- Mídias sociais
- Capítulo 20 ■ Depuração
- Primeiro princípio da depuração
- Beneficie-se do REPL e do console
- Usando o depurador interno do Node
- Clientes do inspetor do Node
- Depurando funções assíncronas
- Depurando o Express
- Conclusão
- Capítulo 21 ■ Distribuição online
- Hospedagem e registro de domínio
- Sistema de nome de domínio
- Segurança
- Domínios de nível superior
- Subdomínios
- Servidores de nome
- Hospedagem
- Implantação
- Conclusão
- Hospedagem e registro de domínio
- Capítulo 22 ■ Manutenção
- Princípios da manutenção
- Haver um plano de longevidade
- Use o controle de código-fonte
- Use um rastreador de problemas
- Pratique uma boa higiene
- Não procrastine
- Faça verificações de QA rotineiras
- Monitore a análise
- Otimize o desempenho
- Priorize o rastreamento de leads
- Evite falhas “invisíveis”
- Refatoração e reutilização de código
- Registro privado do npm
- Middleware
- Conclusão
- Princípios da manutenção
- Capítulo 23 ■ Recursos adicionais
- Documentação online
- Periódicos
- Stack Overflow
- Contribuindo para o Express
- Conclusão
Livros relacionados
Opinião dos leitores
Felipe D B
Melhor Livro sobre o assunto que eu já li até o momento.






