Angular Training (ANG_GADG)
After understanding how HTML5 and JavaScript work together you soon realize that to create truly capable web applications, the code becomes complex and expensive to maintain. That's where Angular comes in. This framework allows us to drastically reduce the amount of JavaScript code written, making our web apps easier to understand at all levels. Angular lets developers think of their pages as sets of components and makes our web apps truly abstract.
Angular is the framework of choice for organizations that are creating the best and newest web applications. This fun and interactive course will get your developers ready to begin using Angular to keep you at the cutting edge of technology.
- Create full-featured dynamic single-page web apps with Angular that allow user inputs and responds to events
- Explain how TypeScript allows you to write future JavaScript today
- Understand and use Angular components, one-way and two-way binding, property binding, and expressions
- Employ Angular Component Router
- Consume RESTful Ajax services through promises and observables
- Exchange data with network servers using the Angular HTTP Client
- Create and work with Angular Forms and form validation
- Employ best practices for Angular application style and organization
- Course Overview
- Intro to Angular
- What Angular does for you
- How it evolved
- The heart of Angular
- It's opinionated!
- The infrastructure
- The Angular CLI
- Why the CLI?
- Installing
- Scaffoling an app
- Scaffolding components
- How to develop with the CLI
- Using the built-in node server
- Going to production
- The Big Picture
- Components are the heart
- Properties vs attributes
- How it all fits together
- Modules
- Separation of logic from view
- The four kinds of bindings
- How Angular runs
- Why SPAs?
- TypeScript
- JavaScript versions (es2015, to the present)
- Why use TypeScript?
- How TypeScript works behind the scenes
- TypeScript features needed for Angular
- Modules, arrow functions, and classes
- Public/private members
- Static typing with TypeScript
- Constructor shorthand
- Decorators
- Components Introduction
- To create a component
- Interpolation - binding data from the class to the view
- Template references
- Expressions deep dive
- The 3 methods of styling a component
- Stylesheets
- styleUrls vs. styles
- Built-in Directives
- The 5 different types of directives
- Attribute directives
- ngStyle and ngClass
- The structural directives
- *ngIf
- *ngSwitchCase
- *ngFor
- Angular Routing
- How Angular handles SPAs
- The steps to routing
- Setting the root of your SPA
- The router-outlet
- How to design and code your routes
- Handline a direct URL
- Pushing the user to a route via JavaScript
- Creating well-designed links
- Reading route parameters
- Reading queryStrings
- Event Binding
- All the events Angular supports
- How to wire up the events
- Handling the event object
- Forms and two-way binding
- Two-way binding with ngModel
- Avoiding the common mistakes
- Validation with status tokens
- Error tokens
- Automatic CSS class settings
- Composition with Components
- The case for components
- The steps to compose
- Passing data from host to inner
- The trick to passing data back up
- Emitting custom events
- Two-way binding between components
- Ajax in Angular
- Why Angular is the perfect place to handle Ajax and RESTful calls
- HttpClient and HttpClientModule
- How to handle the callback with Promises and async/await
- What's in the response object
- How to unwrap it
- Signals
- Signals for simpler reactive programming
- compute()
- effect()
- Converting observables with toSignal()
- Observables Concepts
- What is an observable?
- How they're different from Promises
- How to create an observable
- Observers
- Observables are lazy - why
- Handline observables by subscribing
- The need to unsubscribe
- Using them with HTTP and RESTful services
- Pipeable operators
- Pipeable (lettable) operators
- map(), tap(), filter(), skip(), take()
- mergeMap(), switchMap(), concatMap(), exhaustMap()
- Services in Angular (Time Permitting)
- Dispelling the wrong beliefs about services - What they really are
- Best practices and patterns
- How to add services
- Best placement in your project
- Writing and using custom services
- Angular Pipes (Time Permitting)
- Pipes are like Unix pipes
- All the built-in Angular pipes
- How to create custom pipes
- Modules (Time permitting)
- Why modules?
- Shared modules
- Creating modules
- What goes in the decorators?
Each student will receive a comprehensive set of materials, including course notes and all the class examples.
Experience in the following is required for this Angular class:
Understanding of HTML5 and a strong grasp of object-oriented JavaScript.
Live Private Class
- Private Class for your Team
- Live training
- Online or On-location
- Customizable
- Expert Instructors