Course Outline
Single-page applications are web applications that are run and managed by JS code, the result is a very fast, desktop-like, high-performance web application. Building these kinds of applications means that we will have to deal with a lot of difficulties in our JS code, from dealing with forms, routing, page templates, backend-frontend communication, etc.
Upcoming Meetings
01/03/2022
02/11/2022
Modules
Typescript
- What is Typescript
- tsconfig.json
- variables - const, let, var
- Typescript Basic Types
- Typescript advanced types
- OOP
- Teaching the Typescript compiler
@angular/cli
- Our first angular application
- Going over project files
- Thinking in monorepository, libraries and infrastructure
Angular Architecture
- Modules
- Services
- Components
- Directives
- Dependency injection
- Pipes
Component and template
- Component and template
- Passing data from class to template
- Passing events from template to component
- 2 way binding ex
- Common builtin directives
- NgIf
- NgForOf
- Common builtin pipes
- async, json
RXJS
- How to properly deal with async code
- Promise
- Promise chaining
- Async Await
- Reactive programming
- RXJS
- Observables
- Observers
- Subscription
- Operators
- Dealing with async errors
- Promise to observable | Observable to promise
REST server communication
- Services
- HttpClient
- Authentication
- Authorization
- JWT
- Interceptors
@angular/forms
- How to deal with forms using Angular
- Reactive forms, Template driven forms
- FormControl / NgModel
- FormGroup / NgForm
- FormBuilder
- NgSubmit
- Validation
- Building infrastructure and custom NgModel and custom validation
@anguler/router
- How to deal with routing with angular
- Routing architecture
- RouterModule and Route
- SEO and best practices
- Using the routes to pass data
- Lazy loading
Prerequisites
- Basic JS
- HTML
- CSS