Angular2 - Starts Sept. 19
This course is a quick start to single-page web applications using angular 2 and typescript. By the end of the class you’ll be able to author a new application from scratch.
- Week 1: Introduction to Angular Development
- Introduction to single page web applications
- Introduction to component based applications and MVC
- Introduction to data-binding and interpolation
- Plunkr Angular 1 exercise
- Introduction to TypeScript
- OOP discussion (classes, interfaces, decorators, static type)
- Plunkr Angular 2 exercise
- Introduction to GIT, Node, class tools, etc. Get setup for a class project from scratch.
- Week 2: Components, Modules and Routing
- Components, modules and NgModules (conceptual introduction)
- Bootstrapping Angular 2 from scratch
- Angular 2 routing… the URL vs traditional web applications
- Practice: Design components that are routed components, including a navigation component; the rest may be placeholders to demonstrate routing to them
- Route parameters: snapshots and observables, let’s explore
- App routing modules and routed components
- Introduction to Angular services; mock up a login service in class
- Week 3: Services
- Learn more about templates, data binding, interpolation and basic Angular 2 directives
- Design a login component which uses our login service
- Route guarding services (practice: design CanActivate guard and protect a route with it)
- Introduction to forms in Angular
- Practice: design a routed room reservation component using Angular forms, protect it from un-logged in users
- Practice: design a room service
- Practice: use room service in navigation component / room form component
- Week 4: Building a Bigger App
- Introduction to feature modules
- Refactor: create a “rooms” feature module which will include a number of components for reserving rooms, listing room reservations, etc. This will include the component from week three, warranting a refactor.
- Practice: Guard these assets against users who aren’t logged in
- Practice: Design “login needed” UI when user attempts to access a guarded route and is denied
- Introduction to lazy loading modules
- Brief talk and exercise: Angular2 animations
- Route guarding services (practice: design CanDeactivate guard)
- Practice: Implement CanDeactivate guard on room reservation form
- Firebase! Let’s talk about Firebase a little.
- Class chore: Install AngularFire2, confirm it’s working with a shared class Firebase project
- Talk about http, REST, websockets
- Refactor: Login service should use Firebase and AngularFireAuthModule; allow users to login with their GitHub accounts, Facebook, etc.
- Week 6: Finishing the App
- Refactor: Room service should use Firebase to store rooms, reservations, etc.
- Firebase! Let’s talk about DB security rules.
- Practice: Only allow users to delete THEIR OWN reservations.
- Class review, pizza, feats of strength and airing of grievances
Bring your Laptop
Software: Aside from a text editor, such as Windows Notepad or Mac OS TextEdit, there are no required software applications to complete this course.
Ready to get started?
Fill out the form below to register for this class.