# Index

## Table of content

### Client Programming

1. The location and history objects
2. Document object
3. The form object&#x20;
4. IFE&#x20;
5. Dynamic Scope vs. Lexical Scope&#x20;
6. call(), apply(), bind()&#x20;
7. bind() and currying&#x20;
8. Functions are Objects&#x20;
9. First Class Citizens&#x20;
10. Higher Order Functions&#x20;
11. Closures and Encapsulation&#x20;
12. Promises&#x20;
13. ES8 - Async Await&#x20;
14. Job Queue&#x20;
15. Parallel, Sequence and Race&#x20;
16. ES2020: allSettled()&#x20;
17. ES2021: any()&#x20;
18. Threads, Concurrency and Parallelism&#x20;
19. What Is A Module?&#x20;
20. Module Pattern&#x20;
21. CommonJS, AMD, UMD&#x20;
22. ES6 Modules

### Server programming

1. Collections&#x20;
   1. Arrays&#x20;
      1. Array Initialization&#x20;
      2. Searching and Sorting&#x20;
      3. Multidimensional Arrays&#x20;
      4. Copying and Resizing&#x20;
   2. List\<T>&#x20;
   3. List and Sequence Interfaces&#x20;
   4. Implementing Lists and Sequences&#x20;
      1. Implementing IEnumerable\<T> with Iterators&#x20;
      2. Collection\<T>&#x20;
      3. ReadOnlyCollection\<T>
2. Inheritance&#x20;
   1. Inheritance and Conversions&#x20;
   2. Interface Inheritance&#x20;
   3. Virtual Methods&#x20;
   4. Abstract Methods&#x20;
   5. Sealed Methods and Classes&#x20;
   6. Accessing Base Members&#x20;
   7. Inheritance and Construction&#x20;
   8. Special Base Types
3. LINQ&#x20;
   1. Query Expressions&#x20;
      1. How Query Expressions Expand&#x20;
      2. Supporting Query Expressions&#x20;
   2. Deferred Evaluation&#x20;
   3. LINQ, Generics, and IQueryable\<T>
   4. Standard LINQ Operators&#x20;
      1. Filtering&#x20;
      2. Select&#x20;
      3. SelectMany&#x20;
      4. Ordering&#x20;
      5. Grouping&#x20;
      6. Joins
4. Introduction to .NET
5. Introduction to ASP.NET
6. Internet Information Services
7. What is web API&#x20;
8. Web API project&#x20;
9. Project structure&#x20;
10. Web API controller&#x20;
11. Configure Web API&#x20;
12. Web API routing&#x20;
13. Middleware&#x20;
14. Parameter binding&#x20;
15. Action return type&#x20;
16. Data formats&#x20;
17. Create Web API for CRUD operations&#x20;
    1. Implement GET
    2. Implement POST&#x20;
    3. Implement PUT&#x20;
    4. Implement DELETE&#x20;
18. Consume Web API
    1. Consume all CRUD operations
19. HttpClient&#x20;
20. Dependency Injection&#x20;
21. Exception-handling
22. Access to databases
23. Create the database
24. Authentication and Security
25. Web API hosting
