AngularJS 1 Development

AngularJS is a popular framework from Google, for creating dynamic and contemporary Web applications that require a large amount of well-structured JavaScript code. This course is based on AngularJS 1. We also have a separate course that covers Angular 2.

AngularJS uses the well-proven Model-View-Controller (MVC) pattern for creating rich and complex web pages that are quicker to develop and easier to maintain. AngularJS makes JavaScript programming fun and feasible!


3 days



  • Familiarity with HTML and JavaScript programming

What you'll learn

  • JavaScript language features and best practice
  • Structure of AngularJS single page applications
  • Creating models, views, and controllers
  • Using data binding and templates
  • Using modules
  • Using services
  • Working with Ajax and REST
  • Testing techniques

Course details

Recap Essential JavaScript Language Features

  • JavaScript language gotchas
  • Object orientation in JavaScript
  • Namespace management

Creating Angular Applications

  • Creating a project
  • Creating a data model
  • Creating a controller
  • Creating a view

Going Further with Angular

  • Two-way model binding
  • Controller behaviours
  • Behaviour dependencies
  • Handling user interactions

Application Structure

  • Filtering and ordering model data
  • Generating links
  • URL navigation
  • Dependency injection


  • Overview of modules
  • Using modules to define controllers, directives, filters, and services

Binding and Template Directives

  • Overview of directives
  • Using data binding directives
  • Using template directives
  • Partial views

Elements and Event Directives

  • Using element directives
  • Handling events
  • Working with various types of attributes


  • Using form elements with two-way bindings
  • Validating forms
  • Displaying validation error messages
  • Using form directive attributes


  • Overview of services
  • Services for expressions and errors
  • Services for Ajax and promises
  • Services for REST
  • Services for injection

Ajax and REST

  • Round-trip vs. single page applications (SPA)
  • Ajax
  • RESTful services
  • Promises
  • JSON

Testing Angular Code

  • Overview
  • Testing with Jasmine and Chutzpah
  • Writing test specs in Jasmine
  • Setting expectations
  • Testing JavaScript objects
  • Testing Angular controllers

Angular BDD Workshop

  • Requirements for the application
  • Defining test specs
  • Implementing controllers to pass the test specs
  • Implementing the UI views