Das .NET Framework

.NET ist eine von Microsoft entwickelte Programmierplattform für die Softwareentwicklung. Das Framework war anfangs so strukturiert, dass es nur Anwendungen für das Windows-Betriebssystem ausführen konnte. Mittlerweile werden Entwicklern mit dem .NET Framework, Guidelines zur Verfügung gestellt, die sie für verschiedene Applikationen verwenden können. Diese reichen von Web bis zu Mobile. Die Plattform wird mit einer Klassenbibliothek geliefert, die als Framework Class Library bezeichnet wird. Die „.NET-Vision“ wurde von Bill Gates erstmals 2000 vorgestellt, woraufhin das Visual Studio .NET erstmals 2002 veröffentlicht wurde. Microsoft hat im Laufe der Jahre mit den Anforderungen der Entwickler Schritt gehalten und dem Framework immer mehr Funktionen hinzugefügt. .NET hat einige wichtige Funktionen, mit denen Sie sich vertraut machen sollten, bevor Sie das Programmieren mit .NET lernen. Das Verständnis der verschiedenen Grundsätze des .NET-Frameworks ist ebenfalls von großer Bedeutung.

Die .NET-Architektur

Das .NET Framework besteht aus der Common Language Runtime (CLR), der .NET Framework Klassenbibliothek, Programmierschnittstellen und Dienstprogrammen. Die CLR ist die Laufzeitumgebung, welche den Code ausführt und Services zur Verfügung stellt, welche den Entwicklungsprozess erleichtern. Mit dem .NET Framework können verschiedene Programmiersprachen entwickelt werden, welche dann in die Common Intermediate Language (CIL) übersetzt wird.

ASP.Net

Mit diesem Tool können Entwickler Anwendungen für das Web erstellen. Es ist die Hauptkomponente für das Erstellen von Websites, -anwendungen und -services. Des Weiteren können die Programme in allen Sprachen vorliegen, einschließlich JavaScript, CSS, HTML und Server Scripting Sprachen. Eine ASP.NET-Anwendung kann nur auf Internet Information Services (IIS) oder einem anderen ASP.NET kompatiblen Webserver ausgeführt werden.

ADO.NET

Dieses Tool ist für datenbankorientierte Anwendungen wie Microsoft SQL Server und Oracle konzipiert.

Klassenbibliothek

Klassenbibliotheken enthalten Sammlungen von Funktionen und Methoden, die für verschiedene Zwecke geeignet sind. Diese Methoden sind in Microsoft System oder Namespaces angeordnet. Eine Klassenbibliothek kann zudem, abhängig von den darin enthaltenen Methoden, eine Reihe von Funktionen ausführen, wie zum Beispiel:

  • die XML-Dokumentmanipulation
  • das Rendern von Grafiken
  • Datenbankinteraktionen
  • Lesen und Schreiben von Dateien

Mit .NET erhalten Sie die Framework Class Library (FCL) und die Base Class Library (BCL).

Die BCL besteht nur aus einem kleinen Teil der gesamten Klassenbibliothek, die mit der grundlegenden API der CLR beauftragt ist. Neben dem .NET-Framework gibt es die BCL-Klasse auch in anderen Versionen der Plattform wie Microsoft Silverlight, .NET Compact Framework, Mono und .NET Core. Auf der anderen Seite deckt FCL die gesamte Klasse des .NET-Frameworks ab. In diesem Supersatz sind andere verschiedene Bibliotheksgruppen enthalten. Und zwar sind diese ASP.Net, Windows Forms und Windows Presentation Foundation.

Common Language Runtime

CLR ist die Komponente, welche die Ausführung von .NET-Programmen übernimmt. Die Plattform verfügt über mehrere Funktionen, mit denen dies erreicht werden kann. So übernimmt es beispielsweise das „exception handling“. Dies bedeutet, dass es mit bestimmten Fehlern umgehen kann, die während der Ausführung auftreten können. Also wenn Sie beispielsweise versuchen auf Daten einer Datenbank zuzugreifen, zu der jedoch keine Verbindung besteht, wird ein Fehler (Exception) ausgeworfen. CLR verfügt außerdem über eine Garbage-Collection-Funktion. So werden Ressourcen, die nicht mehr benötigt werden, wie beispielsweise Datenbankverbindungen, wieder geschlossen sobald sie nicht mehr gebraucht werden.

Das besondere an der CLR ist, dass sie mit mehreren Programmiersprachen arbeiten kann. Entwickler haben also verschiedene Möglichkeiten, um Sprachen auszuwählen. C# und VB.NET sind die gebräuchlichsten Programmiersprachen. Die Programmiersprache stellt die erste Schicht dar. Die zweite Schicht ist der Compiler, der für eine einzelne Programmiersprache spezifisch ist. Zum Beispiel wird C# den C#-Compiler verwenden. Die dritte und letzte Schicht ist der Common Language Interpreter (CLI). Dieser ermöglicht es der .NET-Plattform, eine Anwendung in einer beliebigen Sprache auszuführen.

Infografik zum Basisprinzip von .NET

 

Unterschied zwischen .Net und C#

Einige Begriffe werden leider oftmals falsch verwendet, wenn es sich um das .NET-Framework handelt. .NET und C# sind zwei Dinge, welche anfangs immer wieder verwechselt werden. C# wurde von Microsoft nämlich sehr stark in das .NET Framework integriert. Dies erklärt die Schwierigkeiten bei der Unterscheidung der beiden Begriffe. Das .NET Framework deckt das gesamte Microsoft-System ab, mit dem Entwickler Anwendungen erstellen können. C# ist nur eine der Programmiersprachen, welche die Entwickler verwenden können.

Auch F# ist eine Programmiersprache, die während der Entwicklung von CLI eingeführt wurde. Die F# Software Foundation und Microsoft haben sie gemeinsam entwickelt. Des Weiteren ist die Sprache objektorientiert und verwendet funktionale und imperative Methoden. Sie wird für allgemeine Zwecke verwendet, einschließlich Skripting, Web- und Anwendungsprogrammierung. VB.NET und C++ sind weitere Programmiersprachen, welche Sie auf .NET verwenden können.

Visual Studio

Visual Studio ist eine IDE (Integrated Development Environment) – also die Software – mit der Sie .NET-Programme schreiben können. Die Plattform erfreut sich bei Entwicklern großer Beliebtheit, da sie verschiedene Funktionen bietet. Dazu zählen unter anderem Schnittstellendesign, Debugging, Code-Bearbeitung, Leistungsanalyse sowie Serververwaltung.

.NET Ausbildung

Wenn Sie bereits Erfahrung in der Softwareentwicklung haben, ist es möglich sich einige Grundlagen der .NET Entwicklung selbst beizubringen. Falls Sie jedoch noch keinerlei Erfahrungen mit Programmiersprachen haben oder eine professionelle Karriere mit .NET anstreben, ist ein Kursbesuch sicher von Vorteil. Glücklicherweise gibt es zahlreiche Online- und Offline-Kursanbieter, an die Sie sich für .NET-Schulungen wenden können. Einschlägige .NET Framework Kurse konzentrieren sich zwar meist mehr auf die serverseitige Entwicklung, bieten aber dennoch einige Frontend-Themen wie HTML, JavaScript und CSS. Auch einige IT-Kurse enthalten ebenfalls Grundlagen des .NET als Teil ihrer Ausbildung. Das Thema wird hierbei jedoch oft nur angerissen. Viele globale Unternehmen in verschiedenen Branchen nutzen .NET. Sollten Sie also eine Karriere als .NET Entwickler anstreben ist es daher sehr empfehlenswert, in einen guten Kurs zu investieren.

.NET Communities und User Groups

Ebenso wie andere Programmiersprachen entwickelt sich .NET ständig weiter. Daher ist es für jeden Entwickler unumgänglich, sich laufend auf den neuesten Stand zu bringen. .NET Online-Communities sind Orte, an denen Entwickler nicht nur mehr über die Softwareentwicklungsplattform erfahren können, sondern auch eine gute Gelegenheit sich auszutauschen oder Hilfe zu holen. Überdies verfügt Microsoft über eine .NET-Entwicklergemeinschaft, die für Anfänger sehr nützlich sein kann. Oft reicht bei einem Problem jedoch eine schnelle Suche im Internet aus und man bekommt in vielen qualitativ hochwertigen Foren schnelle Hilfe.

Die .Net-Plattform hat sich im Laufe der Zeit stark entwickelt und wurde zu einem umfassenden Tool. Des Weiteren arbeitet Microsoft ständig daran, das Angebote für das Framework auszuweiten, sodass Entwicklern immer mehr Funktionen und Möglichkeiten zur Verfügung stehen. Durch Microsoft Azure wurde es zu einem Favoriten für die Cloud-Entwicklung. Entwickler dürfen sich über eine Vielzahl von Lösungen freuen, welche es beispielsweise ermöglichen, intelligente Apps durch leistungsstarke Daten- und KI-Dienste zu entwickeln. Schließen Sie sich einer .NET User Group in Ihrer Umgebung an, wenn Sie sich mit erfahrenen Entwicklern austauschen möchten und immer am neuesten Stand der Technik sein wollen.