Introduction to Angular | Angular JumpStart
Explore the latest Angular features and advances, demonstrating how to solve the traditional challenges of JavaScript web application development.
This course provides indoctrination in the practical use of Angular and its umbrella of technologies that are on the leading edge of web development.
Skill-focused, Hands- on Learning: 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.
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.
Duration
3 days/24 hours of instructionPublic Classroom Pricing
$2195(USD)
GSA Price: $1646.25
Group Rate: $2095
Private Group Pricing
Have a group of 5 or more students? Request special pricing for private group training today.
Download the Course Brochure
**Topics, agenda and labs are subject to change, and may adjust during live delivery based on audience needs and skill-level.
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
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.
- Use Angular and why. What is Angular?
- Use Angular to reduce the amount of code that you must write to add rich functionality to both existing and new web pages
- Use TypeScript and why it is useful, and how to use it with Angular
- Facilitate development and deployment using Angular CLI
- Work with the various aspects of the Angular architecture to implement clean, responsive web interfaces
- Use Routers to support navigation within a Single Page Application
- Use Angular so it works unobtrusively and performs well
- Work with the Ahead of Time compiler including its impact of developers and the development process
- Facilitate testing and running Angular applications using various tools and techniques
- Use Angular with HTTP to support JSON, REST, and other services