- Used for web, desktop, mobile apps
Components:
- Common Language Runtime (CLR) - Runtime VM
- Framework Class Library (FCL) - Libraries
- Core Languages (ASP.NET, ADO.NET) - Frameworks
Common Language Runtime (CLR)
- Virtual machine component of the .NET framework
- Language Compiler ->
a. MSIL - (Microsoft Intermediate Language Code )
b. + Meta data - JIT : MSIL -> Native Code (.exe, .deb)
Features:
- Automatic GB
- Metadata: Binary info about program
- Assemblies: Physical code grouping (meta, MSIL, assets, etc)
Common Type System (CTS)
- Guidelines for declaring, using, and managing [data types at runtime]
- Language-independent code (C#, VB, etc)
- Types:
- Value: Data in memory allocated on the stack
- Reference: Pointer to Memory on Heap
Common Language Specification (CLS)
- [rules for NET languages]
- Interoperability among applications developed using NET languages.
NET CLI
- Commands when -> console app was run from a directory named [my_app]:
dotnet new console //console
dotnet build //build def
dotnet build --output ./build_output //build with path
dotnet ./build_output/my_app.dll //run
NET Solutions
- ASP: Web App & Services
- MAUI: Multi Platform App UI
- NET IOT: Embedded systems (GPIO, !2C)
- WinForms: r/w into file system
- ADO: DB CRUDs