More Related Content Similar to Introduction to the .NET Framework Similar to Introduction to the .NET Framework (20) Introduction to the .NET Framework2. What is .NET?
Not different from asking: what is Java?
.NET, XP, 2000… oh my!
A Framework
Execution environment (CLR)
Support libraries (BCL)
Languages (C#, VB, F#)
3. .NET is also
A platform, an “ecosystem”
Both MS and others
Tools (VS), libraries, open source projects (Nunit,
EF)
And also, for some parts, a specification
/standard
CLI, C#
4. .NET Framework
C# C++/CLI VB.NET F#
PLINQ TPL
EF LINQ
ADO.NET WPF WCF WF
BCL VS
CLR (Jitter, VM, Loader, GC, Debugging…)
Host: OS, Hardware, Exe (SQL, IIS)
5. History
1.0, 1.1
Winforms, C# 1, ASP.NET, ADO.NET
2.0
Generics, C# 2 (latest CLR)
3.0 – “WinFX”
WPF, WCF, WF
3.5
LINQ, C# 3 (lambda, extension methods)
4.0
ParallelFX, C# 4 (dynamic)
4.5
Metro, C# 5 (async)
6. .NET Framework (history)
PLINQ TPL F#
EF LINQ
ADO.NE
T WPF WCF WF
C++/CLI
BCL
VB.NET
CLR (Jitter, VM, Loader, GC,
Debugging…) C#
8. Core concepts
Managed
Garbage collection
Introspection (self-description)
Virtual machine
JIT
Verification and optimization
Components
Assembly
Bytecode + Metadata
12. From source to execution:
languages
Compilation
csc /out:test.exe test.cs
mcs test.cs --out:test2.exe
Execution
.test.exe
mono test.exe
Multiple languages
csc /t:library /out:testLib.dll testLib.cs
fsc test.fs /r:testLibrary.dll
13. From source to execution
Assembly:
MSIL + Metadata
Load assembly
Plus dependencies
“Fusion”
JIT
14. From source to execution
Assembly (dll)
F# source
MSIL
Assembly
(exe)
C# source
MSIL
Main Func
ASM Main
Greet Func
GreetAll Func
CLR (Jitter, VM, Loader, GC, Debugging…)