Desenvolvendo com AngularJS
Aumento de Produtividade com Aplicações Web Estruturadas
Descrição do livro
Se quiser começar a trabalhar com o AngularJS, seja em um projeto secundário, como uma ferramenta adicional, ou em sua atividade principal, este guia prático irá ensinar você a usar esse metaframework, passo a passo, incluindo desde os conceitos básicos até os mais avançados. No final do livro, você saberá como desenvolver uma aplicação de grande porte, de fácil manutenção e de alto desempenho usando o AngularJS.
Com a orientação de dois engenheiros que trabalharam no AngularJS no Google, você conhecerá os componentes necessários para criar aplicações orientadas a dados usando uma programação declarativa e o padrão Model-View-Controller (Modelo-Visão-Controlador). Você também aprenderá a realizar testes de unidade em cada parte de sua aplicação.
Aprenda a usar controladores para fazer os dados fluírem de e para as visões
Saiba quando usar os serviços do AngularJS em vez de usar controladores
Comunique-se com o servidor para armazenar, acessar e atualizar dados assincronamente
Saiba quando usar os filtros do AngularJS e converter dados e valores para diferentes formatos
Implemente aplicações single-page usando ngRoute para selecionar visões e navegar
Mergulhe de cabeça nas diretivas básicas e avançadas para criar componentes reutilizáveis
Escreva testes fim a fim em uma versão ativa de sua aplicação completa
Este livro utiliza a versão 1.2.19 do AngularJS em todos os exemplos de código e a versão 0.12.16 do Karma para os testes de unidade.
Ver menos ▲Sumário
Sumário
- Introdução
- Capítulo 1 ■ Introdução ao AngularJS
- Introdução ao AngularJS
- O que é MVC (Modelo-Visão-Controlador)?
- Vantagens do AngularJS
- A filosofia do AngularJS
- Começando a trabalhar com o AngularJS
- Que tipo de backend é necessário?
- Minha aplicação como um todo deve ser uma aplicação AngularJS?
- Uma aplicação AngularJS básica
- Hello World com o AngularJS
- Conclusão
- Introdução ao AngularJS
- Capítulo 2 ■ Diretivas e controladores básicos do AngularJS
- Módulos do AngularJS
- Criando o nosso primeiro controlador
- Trabalhando com arrays e exibindo-os
- Mais diretivas
- Trabalhando com ng-repeat
- ng-repeat em um objeto
- Variáveis auxiliares em ng-repeat
- Monitorar por ID
- ng-repeat em vários elementos HTML
- Conclusão
- Capítulo 3 ■ Testes de unidade no AngularJS
- Testes de unidade: o que são e por que devem ser executados
- Introdução ao Karma
- Plugins do Karma
- Explicando a configuração do Karma
- Gerando a configuração do Karma
- Jasmine: estilo de especificação de testes
- Sintaxe do Jasmine
- Matchers úteis do Jasmine
- Escrevendo um teste de unidade para o nosso controlador
- Executando o teste de unidade
- Conclusão
- Capítulo 4 ■ Formulários, dados de entrada e serviços
- Trabalhando com ng-model
- Trabalhando com formulários
- Tirando proveito de data-binding e de modelos
- Validação de formulários e estados
- Tratamento de erros em formulários
- Exibindo mensagens de erro
- Estilizando formulários e estados
- Formulários aninhados com ng-form
- Outros controles de formulário
- Textareas
- Caixas de seleção
- Botões de rádio
- Combo boxes/listas suspensas
- Conclusão
- Capítulo 5 ■ Tudo sobre os serviços do AngularJS
- Serviços do AngularJS
- Por que precisamos de serviços no AngularJS?
- Serviços versus controladores
- Injeção de dependência no AngularJS
- Utilizando serviços prontos do AngularJS
- Ordem da injeção
- Serviços comuns do AngularJS
- Criando nosso próprio serviço no AngularJS
- Criando um serviço simples no AngularJS
- A diferença entre factory, serviço e provedor
- Conclusão
- Serviços do AngularJS
- Capítulo 6 ■ Comunicação com servidores usando $http
- Acessando dados com $http usando GET
- Detalhando as promises
- Propagando o sucesso e o erro
- Serviço $q
- Fazendo solicitações POST com $http
- API $http
- Configuração
- $http avançado
- Configurando os defaults do $http
- Interceptadores
- Melhores práticas
- Conclusão
- Acessando dados com $http usando GET
- Capítulo 7 ■ Testes de unidade em serviços e em XHRs
- Injeção de dependência em nossos testes de unidade
- Estados entre testes de unidade
- Simulando os serviços
- Spies
- Testes de unidade em chamadas ao servidor
- Testes de unidade no nível de integração
- Conclusão
- Injeção de dependência em nossos testes de unidade
- Capítulo 8 ■ Trabalhando com filtros
- O que são filtros do AngularJS?
- Usando filtros do AngularJS
- Filtros comuns do AngularJS
- Usando filtros em controladores e em serviços
- Criando filtros no AngularJS
- O que devemos lembrar sobre os filtros
- Conclusão
- O que são filtros do AngularJS?
- Capítulo 9 ■ Testes de unidade em filtros
- O filtro a ser testado
- Testando o filtro timeAgo
- Conclusão
- Capítulo 10 ■ Roteamento usando ngRoute
- Roteamento em uma Single-Page Application
- Usando ngRoute
- Opções de roteamento
- Usando resolves para verificações prévias na rota
- Usando o serviço $routeParams
- Questões com as quais devemos tomar cuidado
- Um exemplo completo de roteamento no AngularJS
- Configurações adicionais
- Modo HTML5
- SEO com o AngularJS
- Analytics com o AngularJS
- Alternativas: ui-router
- Conclusão
- Capítulo 11 ■ Diretivas
- O que são diretivas?
- Alternativas para diretivas personalizadas
- ng-include
- Limitações de ng-include
- ng-switch
- Entendendo as opções básicas
- Criando uma diretiva
- Template/URL de template
- restrict
- A função link
- Escopo
- replace
- Conclusão
- Capítulo 12 ■ Testes de unidade em diretivas
- Passos envolvidos nos testes de uma diretiva
- A diretiva para o widget de ações
- Configurando o teste de unidade de nossa diretiva
- Outras considerações
- Conclusão
- Capítulo 13 ■ Diretivas avançadas
- Ciclos de vida no AngularJS
- Ciclo de vida do AngularJS
- Ciclo digest
- Ciclo de vida das diretivas
- Transclusões
- Transclusão básica
- Transclusão avançada
- Controladores de diretivas e require
- Opções de require
- Diretivas de entrada com ng-model
- Validadores personalizados
- compile
- Opções priority e terminal
- Integração com terceiros
- Melhores práticas
- Escopos
- Limpar e destruir
- Watchers
- $apply (e $digest)
- Conclusão
- Ciclos de vida no AngularJS
- Capítulo 14 ■ Testes fim a fim
- Por que o Protractor é necessário
- Configuração inicial
- Configuração do Protractor
- Um teste fim a fim
- Considerações
- Conclusão
- Capítulo 15 ■ Diretrizes e melhores práticas
- Testes
- Desenvolvimento orientado a testes
- Variedade de testes
- Quando executar os testes
- Estrutura do projeto
- Melhores práticas
- Estrutura de diretórios
- Bibliotecas de terceiros
- Ponto de partida
- Build
- Grunt
- Disponibilizar um único arquivo JavaScript
- Minificação
- ng-templates
- Melhores práticas
- Práticas genéricas
- Serviços
- Controladores
- Diretivas
- Filtros
- Ferramentas e bibliotecas
- Batarang
- WebStorm
- Módulos opcionais
- Conclusão
- Testes
Livros relacionados
Recursos
Opinião dos leitores
Lindsay d N C
Excelente.
Anderson M C
Didática clara e bons exemplos.
Elenicio M de S
Livro excelente, com boa didática. Recomendo para quem quer conhecer a linguagem. O livro vem com boas dicas do escritor sobre o uso da sintaxe do AngularJS. Só está um pouco desatualizado, mas nada que impeça alguém de aprender os conceitos do AngularJS.
Anderson de S L
Um bom livro para entender os conceitos e o framework. É bom ter conhecimentos de OO antes de iniciar a leitura.




