Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Introduction to .NET
Search
Lorenzo Dematté
January 22, 2013
Programming
0
200
Introduction to .NET
Lorenzo Dematté
January 22, 2013
Tweet
Share
Other Decks in Programming
See All in Programming
知っているようで知らない"rails new"の世界 / The World of "rails new" You Think You Know but Don't
luccafort
PRO
1
110
AIを活用し、今後に備えるための技術知識 / Basic Knowledge to Utilize AI
kishida
22
5.7k
RDoc meets YARD
okuramasafumi
4
170
もうちょっといいRubyプロファイラを作りたい (2025)
osyoyu
1
420
Rancher と Terraform
fufuhu
2
240
Namespace and Its Future
tagomoris
6
700
Tool Catalog Agent for Bedrock AgentCore Gateway
licux
6
2.4k
250830 IaCの選定~AWS SAMのLambdaをECSに乗り換えたときの備忘録~
east_takumi
0
390
🔨 小さなビルドシステムを作る
momeemt
4
670
為你自己學 Python - 冷知識篇
eddie
1
350
Cache Me If You Can
ryunen344
2
680
Kiroの仕様駆動開発から見えてきたAIコーディングとの正しい付き合い方
clshinji
1
210
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Thoughts on Productivity
jonyablonski
70
4.8k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Facilitating Awesome Meetings
lara
55
6.5k
How STYLIGHT went responsive
nonsquared
100
5.8k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Practical Orchestrator
shlominoach
190
11k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Transcript
Introduction to .NET Lorenzo Dematté @ldematte
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?
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
.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
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)
.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#
None
Core concepts Managed Garbage collection Introspection (self-description) Virtual machine JIT
Verification and optimization Components Assembly Bytecode + Metadata
Where? Windows Linux, MacOSX Mono, MonoMAC Embedded Windows CE, Windows
Phone Micro Netduino
Outside MS: Languages
Outside MS: Libraries
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
From source to execution Assembly: MSIL + Metadata Load assembly
Plus dependencies “Fusion” JIT
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
An example: Hello World