Microsoft.Net Sven Groot. Common Language Runtime Superset of ECMA Common Language Infrastructure...

10
Microsoft .Net Sven Groot

Transcript of Microsoft.Net Sven Groot. Common Language Runtime Superset of ECMA Common Language Infrastructure...

Page 1: Microsoft.Net Sven Groot. Common Language Runtime Superset of ECMA Common Language Infrastructure Defines  Language-neutral platform  Intermediate Language.

Microsoft .Net

Sven Groot

Page 2: Microsoft.Net Sven Groot. Common Language Runtime Superset of ECMA Common Language Infrastructure Defines  Language-neutral platform  Intermediate Language.

Common Language Runtime

Superset of ECMA Common Language Infrastructure

DefinesLanguage-neutral platform Intermediate LanguageDeployment file format (assemblies)Extensible metadataCOM/Platform interop

Page 3: Microsoft.Net Sven Groot. Common Language Runtime Superset of ECMA Common Language Infrastructure Defines  Language-neutral platform  Intermediate Language.

Common Type System

Object

String array class MarshalByRefObject

ValueType

Enum struct

enum

Boolean, Byte, Int16, Int32, Int64, Char, Decimal, Guid, Single, DOuble, DateTime, TimeSpan

class ContextBoundObject

class

Interface

Page 4: Microsoft.Net Sven Groot. Common Language Runtime Superset of ECMA Common Language Infrastructure Defines  Language-neutral platform  Intermediate Language.

Common Type System (cont’d)

One class can implement multiple interfacesinterface IShape { void Draw();}interface ICowboy { void Draw();}class CowboyShape : Ishape, ICowboy { void IShape.Draw() { … } void ICowboy.Draw() { … }}

Page 5: Microsoft.Net Sven Groot. Common Language Runtime Superset of ECMA Common Language Infrastructure Defines  Language-neutral platform  Intermediate Language.

Common Type System (cont’d)

Also defines conventions for namingProperty get/set (property Foo get_Foo,

set_Foo) No exception specifications Delegates

Page 6: Microsoft.Net Sven Groot. Common Language Runtime Superset of ECMA Common Language Infrastructure Defines  Language-neutral platform  Intermediate Language.

Language Independance

Common Type System vs. Common Language Specification

Microsoft supported languages: C# (ECMA) Visual Basic .Net Managed C++ J# JScript.Net

Plus over 40 third-party languages

Page 7: Microsoft.Net Sven Groot. Common Language Runtime Superset of ECMA Common Language Infrastructure Defines  Language-neutral platform  Intermediate Language.

Assemblies

Similar to Java package Can be one or multiple files Contain

Manifest Modules (code) Resources

Satellite assemblies for localised resources Strongly named

Strong name = (publisher token, assembly name, version vector, culture)

Page 8: Microsoft.Net Sven Groot. Common Language Runtime Superset of ECMA Common Language Infrastructure Defines  Language-neutral platform  Intermediate Language.

Common Language Frameworks

System System.Collections, System.Collections.Specialised System.Reflection, System.Reflection.Emit System.Security (cryptography, permissions) System.Text (regular expressions, encodings) System.Threading System.Configuration System.Globalization System.Resources System.Management System.Drawing System.Runtime.InteropServices System.ServiceProcess System.Data System.DirectoryServices

Page 9: Microsoft.Net Sven Groot. Common Language Runtime Superset of ECMA Common Language Infrastructure Defines  Language-neutral platform  Intermediate Language.

Common Language Frameworks

System.EnterpriseServices System.IO System.Messaging System.Runtime.Remoting System.Runtime.Serialization System.Diagnostics System.CodeDom System.Runtime.CompilerServices System.Web System.Net System.Xml System.ComponentModel System.Web.UI System.Windows.Forms

Page 10: Microsoft.Net Sven Groot. Common Language Runtime Superset of ECMA Common Language Infrastructure Defines  Language-neutral platform  Intermediate Language.

More resources

http://msdn.microsoft.com/netframework/ http://www.gotdotnet.com http://www.liacs.nl/~sgroot/cbse/