Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Introduction to .NET

Introduction to .NET

Lorenzo Dematté

January 22, 2013
Tweet

Other Decks in Programming

Transcript

  1. Not different from asking: what is Java? .NET, XP ,

    2000… oh my! A Framework Execution environment (CLR) Support libraries (BCL) Languages (C#, VB, F#) What is .NET?
  2. 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# .NET is also
  3. .NET Framework C# BCL CLR (Jitter, VM, Loader, GC, Debugging…)

    Host: OS, Hardware, Exe (SQL, IIS) ADO.NET WPF EF LINQ WCF WF PLINQ TPL C++/CLI VB.NET F# VS
  4. 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)
  5. .NET Framework (history) C# BCL CLR (Jitter, VM, Loader, GC,

    Debugging…) ADO.NET WPF EF LINQ WCF WF PLINQ TPL C++/CLI VB.NET F#
  6. Core concepts Managed Garbage collection Introspection (self-description) Virtual machine JIT

    Verification and optimization Components Assembly Bytecode + Metadata
  7. 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
  8. From source to execution C# source CLR (Jitter, VM, Loader,

    GC, Debugging…) F# source Assembly (dll) MSIL Assembly (exe) MSIL Greet Func GreetAll Func Main Func ASM Main