6. C# 1.0 - Key Features
Managed Code (.NET)
IL Code (Intermediate Language)
Common Language Runtime (Visual Basic.NET, J#, F#, ...)
Base Class Library
Garbage Collector
7. C# 1.0 - Key Features
OOP (classes)
like Java
no multiple inheritance
9. C# 1.0 - Key Features
Delegates and Events
Delegate: data structure that refers to either a static method, or an
object and an instance method of its class
15. C# 2.0 - Key Features
Nullable Types
Reference Types
reference to object on heap
can be null
Value Types
object on stack or embedded
can not be null
24. C# 3.0 - Key Features
Extension Methods
"Add" methods to existing types without creating a new derived type,
recompiling, or otherwise modifying the original type.
38. C# 4.0 - Key Features
Late Binding (dynamic)
object of type dynamic bypasses static type checking.
=> if code is not valid, errors are caught at run time!
39. C# 4.0 - Key Features
Late Binding (dynamic)
Dynamic Language Runtime (IronPython)
HTML DOM
Reflection API
COM Interop
40. C# 4.0 - Key Features
Late Binding (dynamic)
before C# 4.0:
((Excel.Range)excelApp.Cells[1,1]).Value2="Name";
Excel.Rangerange2008=(Excel.Range)excelApp.Cells[1,1];
C# 4.0:
//accesstotheValuepropertyandtheconversionto
//Excel.Rangearehandledbytherun-timeCOMbinder
excelApp.Cells[1,1].Value="Name";
Excel.Rangerange2010=excelApp.Cells[1,1];