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
そのpreloadは必要?見過ごされたpreloadが技術的負債として爆発した日
mugitti9
2
3.3k
Domain-centric? Why Hexagonal, Onion, and Clean Architecture Are Answers to the Wrong Question
olivergierke
2
810
Software Architecture
hschwentner
6
2.3k
階層構造を表現するデータ構造とリファクタリング 〜1年で10倍成長したプロダクトの変化と課題〜
yuhisatoxxx
3
1k
CSC509 Lecture 03
javiergs
PRO
0
330
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
yimajo
2
400
Go言語はstack overflowの夢を見るか?
logica0419
0
120
その面倒な作業、「Dart」にやらせませんか? Flutter開発者のための業務効率化
yordgenome03
1
120
Building, Deploying, and Monitoring Ruby Web Applications with Falcon (Kaigi on Rails 2025)
ioquatix
4
2k
理論と実務のギャップを超える
eycjur
0
130
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
300
非同期jobをtransaction内で 呼ぶなよ!絶対に呼ぶなよ!
alstrocrack
0
710
Featured
See All Featured
Optimizing for Happiness
mojombo
379
70k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Docker and Python
trallard
46
3.6k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
We Have a Design System, Now What?
morganepeng
53
7.8k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Embracing the Ebb and Flow
colly
88
4.8k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Designing for humans not robots
tammielis
254
26k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
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