7 de outubro de 2015

[Livro] AngularJS - Uma abordagem prática e objetiva

Sou meio chato pra indicar livros, mas alguns ganham bons pontos comigo, ou porque tem um conteúdo mais constante com relação ao tempo, ou porque são muito bons começos. É o caso dessa indicação de livro aqui:


Esse livro da editora Novatec é bastante sucinto na sua introdução ao angular, cuidando de vários aspectos do framework. É um livro que não se prende a uma só aplicação, tendo uma discussão bem genérica das aplicações de cada recurso, o que é bom para não prender seu juízo em uma situação só, mas sim compreender pra que cada elemento do AngularJS foi feito.

A versão abordada é a 1.2.22, o que já está um pouco defasada (isso meio q é esperado dos livros, não é? não dá pra publicar livros na mesma velocidade em que a tecnologia evolui) mas é com toda certeza uma das melhores introduções aos conceitos básicos do Angular.

O Índice do livro segue abaixo. A quem não teve nenhum contato com Angular, recomendo os capítulos 1, 2, 3, 4, 8, 9 e 11 com prioridade. Os outros capítulos a meu ver tratam de aspectos mais detalhados, e que complicam o começo, mas ajudam quem já esta compreendendo a aprofundar.

·         Capítulo 1 ■ Introdução ao AngularJS
o   Visão geral
o   Por que outro framework?
o   Conceitos importantes
§  Model-View-Whatever (MVW)
§  Model View Controller – client side
§  SPA – Single Page Application
o   Resumo
·         Capítulo 2 ■ Instalação do AngularJS
o   Preparação do ambiente de desenvolvimento
§  Editores e IDEs mais utilizados no mercado
§  Instalação do Sublime Text
o   Instalação do AngularJS
o   Resumo
·         Capítulo 3 ■ Principais conceitos do AngularJS
o   Configuração da single-page
§  Componentes de aplicação single-page AngularJS
o   Model (Scope)
o   Controllers
o   Controllers aninhados
§  Boas práticas
o   Módulos
§  Módulo principal por meio da diretiva ng-app
§  Componentes de um módulo
§  Sintaxe de injeção de dependências utilizada nos módulos
o   Injeção de dependências (DI
§  Problemas gerados pela injeção baseada no nome da dependência
§  Solucionando o problema de injeção pelo nome da dependência
o   View
o   Serviços
§  Value
§  Constant
§  Factory
§  Service
§  Provider
§  Diretivas
o   A diretiva ng-model e o conceito revolucionário Two-Way Data Binding
o   Como criar uma diretiva customizada?
o   Resumo
·         Capítulo 4 ■ Formulários e CSS
o   View com formulário
§  Diretiva ng-click
§  Enviando dados do formulário para o servidor
§  Classes CSS para o estado do formulário
§  Atributos automáticos para campos do formulário
§  Diretiva ng-show e ng-hide
§  Observando alterações no $scope utilizando $watch
o   Aplicando classes CSS (estilos) aos elementos
§  Utilizando uma função por meio da diretiva ng-class
§  Utilizando expressões para acessar atributos do escopo
§  Utilizando um objeto por meio da diretiva ng-class
o   Resumo
·         Capítulo 5 ■ Filtros
o   Overview
o   Criando filtros customizados
o   Criando filtros que permitem passagem de parâmetros
o   Resumo
·         Capítulo 6 ■ Diretivas – Uma abordagem detalhada
o   Ciclo de vida de uma diretiva
§  Fase Compiling
§  Fase Linking
o   Definição de uma diretiva por meio do objeto de configuração
o   restrict
o   priority
o   terminal
o   template
o   templateUrl
o   replace
o   scope
§  scope com valor false
§  scope com valor true
§  scope com valor object
§  Isolated Scope Bindings
§  Text Binding – Prefixo@
§  One-Way Binding – Prefixo &
§  Two-Way Binding – Prefixo =
o   transclude
o   controller e require
§  Modificadores para o atributo require
§  Injeção de vários controllers por meio do atributo require
§  Utilizando um controller externo por meio do atributo controller
o   compile e link
§  pre e post link
o   Diretivas AngularJS mais utilizadas
§  ng-app
§  ng-model
§  ng-controller
§  ng-bind
§  ng-class
§  ng-show e ng-hide
§  ng-{evento}
§  ng-src e ng-href
§  ng-repeat
o   Resumo
·         Capítulo 7 ■ Ciclo de vida
o   Introdução
o   Ciclo de vida de inicialização
§  Fase Compiling
§  Fase Linking
o   Ciclo de vida em tempo de execução (runtime)
§  Loop $digest
o   Resumo
·         Capítulo 8 ■ Eventos
o   Abordagem sobre eventos
o   Ouvindo eventos
o   Emitindo eventos
§  Qual a diferença entre $emit e $broadcast ?
o   Passando argumentos no evento
o   Resumo
·         Capítulo 9 ■ Mecanismo de rotas
o   Route Engine
o   Instalação
o   Entendendo o conceito de rotas
§  when(path, route)
§  otherwise(params)
§  Diretiva ng-view
o   Modo Hashbang versus HTML 5
§  Modo hashbang
§  Modo HTML5
o   Resumo
·         Capítulo 10 ■ Internacionalização e localização
o   Conceito de internacionalização – i18n
§  Por que a sigla i18n?
§  Locale ID
§  Como aplicar i18n com AngularJS?
o   Conceito de localização – l10n
§  Por que a sigla l10n?
§  Aplicando localização com Angular Translate
o   Resumo
·         Capítulo 11 ■ Comunicação com um servidor
o   Serviço $http
§  method
§  url
§  params
§  data
§  headers
§  transformRequest
§  transformResponse
§  cache
§  timeout
§  withCredentials
§  Métodos convenientes existentes no serviço $http
§  Interceptadores de requisição
o   Serviço $resource
§  Como o serviço $resource funciona
§  Funções JavaScript
§  Funções customizadas no $resource
§  $resource como um serviço AngularJS
o   Resumo
·         Capítulo 12 ■ Outros conceitos AngularJS
o   Promises
§  Como criar uma promise
§  Como consumir uma promise
§  Promises e o loop $digest
§  Promises e o callback de notificação
§  Encadeamento de promises
o   Cache
§  Atributo capacity do cache
§  O cache-padrão HTTP
§  Capacidade do cache $http
o   Cookies
o   Outros serviços AngularJS
§  $window
§  $document
§  $templateCache
§  $parse
§  $location
§  $exceptionHandler
§  $filter
§  $compile
§  $timeout
§  $interval
o   Objeto window.angular
§  angular.bootstrap
§  angular.toJson
§  angular.fromJson
§  angular.module
§  angular.lowercase
§  angular.uppercase
§  angular.isUndefined
§  angular.isString
§  angular.isObject
§  angular.isNumber
§  angular.isFunction
§  angular.isElement
§  angular.isDate
§  angular.isArray
§  angular.forEach
§  angular.element
§  angular.copy
o   Testes
§  Node.js
§  Karma
§  Jasmine
§  Testando a aplicação AngularJS
§  Debugando a aplicação
o   Resumo
·         Capítulo 13 ■ RequireJS e AngularJS
o   Introdução
o   AMD e RequireJS
o   Ordem de carregamento dos arquivos
o   Integração RequireJS e AngularJS
o   Como o AngularJS foi carregado?

o   Resumo