dummies
 
 

Suchen und Finden

Titel

Autor/Verlag

Inhaltsverzeichnis

Nur ebooks mit Firmenlizenz anzeigen:

 

Microsoft Visual C# 2012 - Das Entwicklerbuch. - Grundlagen, Techniken, Profi-Know-how

von: Dirk Louis, Thorsten Kansy, Shinja Strasser

Microsoft Press Deutschland, 2012

ISBN: 9783848300259 , 1173 Seiten

Format: PDF, ePUB, OL

Kopierschutz: frei

Windows PC,Mac OSX geeignet für alle DRM-fähigen eReader Apple iPad, Android Tablet PC's Apple iPod touch, iPhone und Android Smartphones Online-Lesen für: Windows PC,Mac OSX,Linux

Preis: 26,99 EUR

Exemplaranzahl:  Preisstaffel

Für Firmen: Nutzung über Internet und Intranet (ab 2 Exemplaren) freigegeben

Derzeit können über den Shop maximal 500 Exemplare bestellt werden. Benötigen Sie mehr Exemplare, nehmen Sie bitte Kontakt mit uns auf.


Mehr zum Inhalt

Microsoft Visual C# 2012 - Das Entwicklerbuch. - Grundlagen, Techniken, Profi-Know-how


 

Kapitel 1. Das .NET Framework


In diesem Kapitel:

Das .NET Framework stellt mit der Implementierung der Common Language Infrastructure eine Plattform zur Verfügung, die als Grundlage dient, um Programme auszuführen. Wesentliche Bestandteile des .NET Frameworks sind die verschiedenen Sprachen, die für die Software-Entwicklung verwendet werden können, die Framework Class Library (FCL), eine gemeinsame Klassenbibliothek, die zum Teil als API (Application Programming Interface) vorhandene Dienste des jeweiligen Betriebssystems adaptiert, und die gemeinsame virtuelle Laufzeitumgebung CLR (Common Language Runtime). Microsoft bietet das .NET Framework als proprietäre Software an.

Bis zur Version 3.5 sah die .NET Framework-Welt wie in Abbildung 1.1 dargestellt aus.

Abbildung 1.1 Das .NET Framework bis zur Version 3.5

Version 4.0 stellt eine eigenständige Entwicklung dar, die nicht auf andere Versionen (wie z. B. 3.5 auf 3.0 + SP1) aufbaut, sondern für sich steht. Große Teile wurden sogar komplett neu implementiert – allerdings ohne zu riskieren, dass bestehender .NET-Code nicht mehr läuft.

Das .NET Framework 4.5 ist hingegen wieder eine reine Erweiterung der Version 4.0 (so wie z. B. schon Version 3.0 und 3.5 Erweiterungen des .NET Frameworks 2.0 waren). Die wichtigste Neuerung ist sicherlich die Unterstützung für die Erstellung von Windows Store-Apps. Diese Unterstützung drückt sich allerdings nicht in APIs aus, sondern vielmehr in Form von Profilen, Projektionsschichten und Schnittstellen, die es Code, der in einer .NET-Sprache geschrieben wurde, gestatten, auf die neue WinRT (Windows Runtime) zuzugreifen.

Abbildung 1.2 Das .NET Framework 4.5

Historie


Eigentlich begann die (Erfolgs-)Geschichte von .NET mit einer von der Firma Sun erwirkten gerichtlichen Verfügung, die es Microsoft untersagte, die von Sun entwickelte Java-Technologie zu adaptieren. Microsoft wechselte daraufhin schlagartig die Richtung, und die Idee, eine neue Plattform zu entwickeln, wurde geboren. Die darauf folgenden Jahre, von 2000 bis Ende 2007, gehören zweifelsohne zu den ereignisreichsten in der Chronik der Microsoft-Entwicklergemeinde. Mitte 2000 stellte Bill Gates seine Vision von .NET vor und es gab bereits auch eine Vorversion des zukünftigen .NET Framework. Im Oktober 2000 wurde C# als Standard bei der ECMA eingereicht. Im Januar 2002 wurde die Entwicklungsplattform .NET offiziell in der Version 1.0 vertrieben und ca. eineinhalb Jahre später kam die Version 1.1 mit diversen Verbesserungen und Erweiterungen auf den Markt. Noch einmal eineinhalb Jahre später erschien die Version 2.0, die zahlreiche Verbesserungen in der Sprache C# und den .NET-Bibliotheken brachte. Auf dieser fundierten Basis aufbauend, beschränkte sich das .NET Framework 3.0, welches im November 2006 veröffentlicht wurde, weitgehend auf Erweiterungen wie der Windows Workflow Foundation (WF), der Windows Presentation Foundation (WPF), der Windows Communication Foundation (WCF) und Windows Cardspace. Etwa ein Jahr später, im November 2007, wurden in den USA die erste Version von Visual Studio 2008 sowie das .NET Framework 3.5 mit LINQ vorgestellt. Im Januar 2008 wurde der Quellcode des .NET Frameworks veröffentlicht und im Februar 2008 wurde Visual Studio 2008 offiziell in Deutschland eingeführt.

Im März 2010 wurden .NET Framework 4.0 sowie Visual Studio 2010 veröffentlicht. Mit dieser .NET-Version wurden besonders die dynamischen Sprachelemente und die Zusammenarbeit mit COM-Komponenten verbessert und zwar, das soll an dieser Stelle betont werden, zusammen mit weiteren Verbesserungen an anderen Teilen wie WPF, WCF, etc. Zusammen mit Visual Studio 2012 ist nun seit Ende 2012 das .NET Framework 4.5 die zurzeit aktuellste Version.

Bausteine des .NET Frameworks


Das .NET Framework ist ein Konglomerat aus mehreren verschiedenen Bestandteilen. Die wichtigsten sind nachfolgend aufgeführt und erklärt.

Common Language Infrastructure


Die Common Language Infrastructure (CLI) ist eine Spezifikation für die sprach- und plattformneutrale Anwendungsentwicklung, an der Microsoft, Borland, HP, IBM, Sun und ca. zehn weitere Unternehmen und Universitäten mitgearbeitet haben. Das .NET Framework von Microsoft ist eine Implementierung dieses Standards. Es ist nicht die einzige Implementierung – es existieren weitere CLI-Standardimplementierungen z. B. für Mac OS X, Unix und Linux –, aber es ist zweifelsohne die bekannteste Implementierung.

Zum jetzigen Zeitpunkt ist der CLI-Standard ECMA 335 in sechs Partitionen unterteilt. Die erste Partition beschreibt die Architektur für die Implementierung der Common Language Infrastructure mit den Spezifizierungen des Common Type System (CTS) und der Common Language Specification (CLS). Die zweite Partition definiert Semantik, Syntax und Dateistruktur. Die dritte Partition enthält Informationen über die sog. Zwischensprache, die Common Intermediate Language (CIL). Die vierte Partition beschäftigt sich mit den Bibliotheken und enthält eine Spezifikation, wie die Klassen bzw. die Klassenbibliotheken implementiert werden. Die fünfte Partition enthält eine Beschreibung für ein einheitliches Debuggingformat. Die sechste und letzte Partition besteht aus diversen Anhängen.

Common Language Runtime


Die Laufzeitumgebung von .NET bezeichnet man als Common Language Runtime (CLR). Die Common Language Runtime hat die Aufgabe, die Ausführung des geschriebenen Codes zu verwalten und bietet zusätzliche Dienste an, die das Entwickeln auf und mit dem .NET Framework vereinfachen. Diese Art der Programmierung bzw. den dazu entwickelten Code nennt man im .NET Framework Managed Code. Die verschiedenen Hochsprachen wie zum Beispiel C# erzeugen beim Kompilieren mit dem C#-Compiler einen Zwischencode, der in der sog. Common Intermediate Language (CIL) definiert ist. Dieser Zwischencode wird erst durch den Just-In-Time-Compiler (kurz JIT-Compiler oder Jitter) in einen nativen Code kompiliert. Das gesamte Konzept der Ausführung von Anwendungen im .NET Framework beruht auf der Grundlage der Common Language Runtime und der Common Intermediate Language und stellt dem Entwickler ein laufzeitbasiertes Framework zur Verfügung.

Abbildung 1.3 Aufbau des Common Language Frameworks

Der Class Loader lädt die Klassenkonstrukte und übergibt sie an den Code Manager. Der JIT-Compiler erzeugt aus dem Zwischencode einen nativen Code, der dem Prozessor verständlich ist. Das Speichermanagement für die Anwendung, sofern diese im Managed Code geschrieben wurde, übernimmt der Garbage Collector. Einer der wichtigsten Bausteine ist der COM Marshaller. Über den COM Marshaller lässt das .NET Framework die Möglichkeit offen, Win32-Komponenten im .NET Framework über einen Wrapper ausführen zu können bzw., wenn das .NET Framework auf dem Rechner installiert ist, in Win32-Anwendungen Assemblys ausführen zu können. Die beiden Tools, die für ein COM-Marshalling verwendet werden können, sind tlbimp.exe zum Erzeugen einer .NET-fähigen Wrapperklasse einer Win32-Komponente sowie tlbexp.exe, die eine Typbibliothek generiert, um Assemblys in Win32-Anwendungen ausführen zu können.

Common Intermediate Language


Stellen Sie sich einmal vor, die ganze Welt spricht eine Sprache und jeder Mensch auf dieser Erde würde sie verstehen. Das Ganze klingt im ersten Augenblick zu schön um wahr zu sein, und doch ... für das .NET Framework ist es dank der Common Intermediate Language Realität geworden. Wie aber können Codeteile, die z. B. in C# geschrieben wurden, mit Codeteilen, die in einer anderen Programmiersprache geschrieben sind, zu einem Programm vereint und zur Ausführung gebracht werden? In .NET wurde dieses Problem durch einen Zwischenschritt gelöst, bei dem der Quelltext der verschiedenen Programmteile in einen prozessorunspezifischen Zwischencode kompiliert wird, den man Intermediate Language Code (kurz IL-Code) nennt. Dieser IL-Code wird vom .NET Framework verstanden und kann vom JIT-Compiler in ausführbaren, nativen Code übersetzt werden.

Abbildung 1.4 Vom IL-Code zum Managed Code

Alle Programme, die innerhalb der Common Language Runtime ablaufen, nennt man Managed Code. Außerhalb der Common Language Runtime laufende Programme bzw. Code wird als Unmanaged Code bezeichnet. Das .NET Framework stellt mit dem Tool ilasm.exe auch einen eigenen Compiler für IL-Code zur...