Google AngularJS Training

Google AngularJS Training
AngularJS is a Google-supported, open-source JavaScript “MV*” or “single-page app” framework. Although released a few years ago, it leaped to extreme popularity in 2013, and is now widely regarded as one of the top frameworks for JavaScript app development.AngularJS is an opinionated framework – it brings strong ideas about how apps should be built. In return for working with AngularJS conventions, the framework provides an exceptional amount of “magic” to make app development and testing easier.

Objectives

  • Understand how AngularJS relates to other JavaScript tools, libraries, and frameworks
  • Create and debug AngularJS apps using a wide range of built-in components
  • Understand how Angular’s architectural features, such as Services, Modules, Scopes, and Directives work together to facilitate proper application design
  • Communicate with servers, create simple custom directives, and remain aware of performance pitfalls in Angular development

Prerequisites

  • Core knowledge of HTML and CSS
  • Solid knowledge and experience with JavaScript language and the DOM
  • Some knowledge of jQuery, promises/deferreds, JS module patterns will be helpful

Outline

Background

  • JavaScript MV* and SPA Concepts
  • Philosophy of AngularJS
  • AngularJS vs. libraries (e.g., jQuery) and other frameworks (e.g., Backbone.js
  • Angular philosophy: “HTML for WebApps”
  • Directives and Dependency Injection

Setting Up and Debugging Angular

  • Dependencies
  • Using Chrome Debugger and Batarang

Overview of Angular in Action: a Simple App

  • Tour a simple, lightweight application
  • Templates
  • Strange HTML: What are Filters and Directives?
  • Models: Where is the data?
  • Databinding
  • Controllers
  • Services: Where is the rest of the code?
  • Modules: How do we structure an app?
  • Built-in features overview
  • jqLite
  • Promises
  • i18n/l10n
  • Miscellaneous helpers

Views

  • Templates
  • Syntax
  • View helper logic
  • Expressions
  • Using built-in filters

Models

  • Angular “Models” vs. JavaScript MVC “Models”
  • Models vs. Resources
  • Data binding
  • Filters

Controllers

  • Scopes
  • Databinding
  • Watches

Client-side routing, the AngularJS way

  • ngView
  • $route and $routeProvider
  • $location

Communication with the Server

  • $http
  • Resources
  • Databinding and AJAX

Leveraging the power of AngularJS

  • Custom Directives
  • Custom Filters
  • Testing

Application Structure and Events

  • Modules and Services
  • Understanding Dependencies
  • Communicating up, down, and across scopes