> For the complete documentation index, see [llms.txt](https://syllabus.migracode.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://syllabus.migracode.org/courses/advanced-js-and-asp.net-course/self-study-prerequisites/index.md).

# Index

## Table of Content

### Dot Net

1. Introduction to the .Net
2. Understanding .NET and the CLR (Common Language Runtime)
3. What kind of applications can be developed with .NET
4. Differences between the .NET Framework and .NET 5
5. What is .NET Standard?
6. Create libraries in .NET Standard and how to use them in different runtimes
7. Evolution of .NET from its appearance to version 1.0
8. Garbage collector in .NET
9. What's New in ASP.Net Core 3.0
10. What's New in .Net 5
11. .Net 5 SDK Installation
12. Create .Net 5 project
13. Introduction to VS
14. Installing Visual Studio 2019 Community
15. Introduction to Visual Studio 2019 Community
16. How to create console application in Visual Studio 2019 Community
17. Compile and run our first application

### C# Language

1. Introducing C#&#x20;
2. Why C#?&#x20;
3. C#’s Defining Features&#x20;
4. Managed Code and the CLR&#x20;
5. Basic Coding in C#&#x20;
   1. Local Variables Scope&#x20;
   2. Statements and Expressions&#x20;
   3. Comments and Whitespace&#x20;
   4. Fundamental Data Types&#x20;
      1. Numeric Types&#x20;
      2. Booleans&#x20;
      3. Strings and Characters&#x20;
      4. Object&#x20;
   5. Operators&#x20;
   6. Flow Control&#x20;
      1. Boolean Decisions with if Statements&#x20;
      2. Multiple Choice with switch Statements&#x20;
      3. Loops: while and do&#x20;
      4. C-Style for Loops&#x20;
      5. Collection Iteration with foreach Loops&#x20;
6. 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>
7. Types&#x20;
   1. Classes&#x20;
      1. Static Members&#x20;
      2. Static Classes&#x20;
      3. Reference Types&#x20;
   2. Structs&#x20;
      1. When to Write a Value Type&#x20;
      2. Guaranteeing Immutability&#x20;
   3. Members&#x20;
      1. Fields&#x20;
      2. Constructors&#x20;
      3. Deconstructors&#x20;
      4. Methods&#x20;
      5. Properties&#x20;
   4. Interfaces&#x20;
      1. Default Interface Implementation&#x20;
   5. Enums&#x20;
8. Generics&#x20;
   1. Generic Types&#x20;
   2. Constraints&#x20;
      1. Type Constraints&#x20;
      2. Reference Type Constraints&#x20;
      3. Value Type Constraints&#x20;
      4. Value Types All the Way Down with Unmanaged Constraints&#x20;
      5. Not Null Constraints&#x20;
      6. Other Special Type Constraints&#x20;
      7. Multiple Constraints

### MVC architecture

1. What is MVC?
2. How MVC Design Pattern Works?
3. Understanding Model, View, and Controller.
4. Where the MVC Design Pattern is used in the real-time three-layer application?
5. What is ASP.NET Core MVC?

### Entity Framework

1. Introduction to Entity Framework Core
2. What is Entity Framework Core?&#x20;
3. What is ORM?&#x20;
4. Why do we need to use an ORM?&#x20;
5. EF Core Development Approaches.&#x20;
6. EF Core Code First Approach&#x20;
7. Entity Framework Core Database First Approach&#x20;
8. EF Core Database Providers&#x20;
9. Why need to use Entity Framework Core over EF 6.x?
