Working with Angular | JumpStart to Angular

This course provides indoctrination in the practical use of Angular and its umbrella of technologies that are on the leading edge of web development. This class is “technology-centric”, designed to train attendees in essential Object Oriented, Java development skills, coupling the most current, effective techniques with the soundest industry practices. This course is about 50% hands-on lab and 50% lecture, with extensive exercises designed to reinforce fundamental skills and concepts learned in the lessons.

Retail Price: $2,195.00

Next Date: Request Date

Course Days: 3


Request a Date

Request Custom Course


About this Course

Angular is one of the most popular JavaScript frameworks for creating web and native mobile applications by implementing several features and capabilities:

  • Single Page Applications (SPAs) load a single HTML page that is dynamically updated based on user interaction. SPAs can communicate with the server-side to load data into the application without a full-page refresh.
  • Two-way data binding means that when the data store updates, the UI is immediately updated (and vice versa).
  • Modules divide code into reusable parts with related components, directives, pipes, and services grouped together and can be combined with each other to create an application.
  • Angular uses a dependency injection design pattern for services, increasing code efficiency and modularity.
  • Thanks to Angular's Model-View-* architecture, enforcing the Single Responsibility Principle (SRP) and Don't Repeat Yourself (DRY) techniques, coding is reduced into the smallest pieces possible.
  • The declarative user interface means the presentational logic in HTML is separated from the imperative logic and Angular’s data binding.
  • Angular is also easily integrated into other frameworks, such as Ionic.

Students will build custom components, using application routes, form validation, and unit-testing. The course starts with an introduction of Angular CLI and TypeScript. It then delves into component-driven development with Angular components, covering data-binding, directives, services, routing, HTTP, the RxJS library, forms unit testing and REST.

 

Audience/Prerequisites

In order to be successful in this class, incoming attendees are required to:

  • Have current, hands-on experience in developing basic web applications
  • Be versed in HTML5, CSS3 and JavaScript. 
  • This is an introductory level Angular development course but an intermediate level web development class, designed for experienced web developers that need to further extend their skills in web development.

Course Outline

Part 1:  Getting Started with Angular 
1. Overview of Angular Architecture

  • Angular Versioning
  • Model-View-*
  • Data Binding
  • Components and Dependency Injection
  • Services and Events
  • Common Component Lifecycles and Hooks

2. TypeScript

  • Angular, ES6 and TypeScript
  • Transpilers
  • Typing and Classes
  • Abstract Classes and Interfaces
  • Annotations

Exercise: Angular and ES6
Exercise: Angular and TypeScript

3.  Bootstrapping with Angular CLI

  • Angular CLI Overview
  • New Projects with CLI
  • Testing and Generating with CLI
  • Angular Console

4.  Angular Project Structure

  • Configuration Files
  • Top-Level Directories
  • Contents of app folder

Exercise: Creating Projects with Angular CLI

Part 2:  Working with Angular

1.  Components and Events

  • Data Binding and Components
  • Event Binding
  • Custom Events
  • Parent/Child Events
  • EventEmitter/emit()

Exercise: Nested Components

2. Third Party Libraries

  • Angular and the Need for Libraries
  • Options for adding Libraries
  • Working with npm install
  • Working with angular.json
  • ng2 Wrappers

Exercise: Nested Components
3. Dynamic Views

  • View Encapsulation
  • Structural/Attribute Directives
  • Conditional Styling

Exercise: Working with Directives

4. Pipes

  • Overview of Pipes
  • Built-in Pipes
  • Formatting and Conversions
  • Parameterizing Pipes
  • Pure vs. Impure Pipes
  • Customizing Pipes

Exercise: Built-in and Custom Pipes

Part 3: Angular Forms

1.  Forms and the Forms API

  • Forms and NgModel
  • NG Form Groups
  • NG Form Validation
  • Model-Driven Reactive Forms
  • FormBuilder API
  • Reactive Form Validation

Exercise: Template-Driven Forms
Exercise: Reactive Forms

Part 4:  Single Page Applications and Routes

1. Single Page Applications

  • Overview of the SPA Concept
  • Routing for Page Display
  • Working with ActivatedRouter
  • Location Strategies
  • Nested Routes

Exercise: Routing

2. Services and Dependency Injection

  • Angular’s DI Framework
  • Components and Injectables
  • Tree-shakeable providers
  • Service Interfaces and DI
  • Constructor Injection

Exercise: Services

3. Modules

  • Overview of Modules
  • Feature Modules
  • Feature Module Routing
  • Shared Modules

Exercise: Modules

Part 5: Using RESTful Services

1.  Overview of REST

  • REpresentational State Transfer
  • REST and HTTP
  • REST/HTTP: Representation-Oriented
  • REST Design Principles

2. Angular and REST

  • REST in Angular
  • Promises, Observables, Subject
  • HttpClient and Observables
  • async Pipes and HttpClient Interceptors

Exercise: Working with a REST API

Part 6: Angular Best Practices

1. Angular Style Guide

  • Recent Angular Improvements
  • Upgrading Angular
  • Single Responsibility Principle
  • Naming Conventions
  • Coding Conventions
  • Application Structure
  • Routing

2. Taking the Next Step with Angular

  • Reactive Programming in Angular
  • Angular and Security
  • Further Enhancing the Interface
  • Testing Angular Applications
  • Optimizing Angular for the Enterprise
  • Maintaining State in Angular

Part 7: Additional Angular Topics (Time Permitting)

1. ES6+

  • ES6 Classes and Modules
  • ES6 Arrow Functions and Array Methods
  • ES6 Template Literals
  • ES6 Spread Operator, Rest Parameter and Destructuring

Exercise: Deep Dive into Object-Oriented ES6+

2. Sass and SCSS for Angular and Material

  • Variables
  • Nesting
  • Partials
  • Import
  • Mixins
  • Extend/Inheritance Operators


Sorry! It looks like we haven’t updated our dates for the class you selected yet. There’s a quick way to find out. Contact us at 502.265.3057 or email info@training4it.com


Request a Date