Was ist .NET?
.NET ist eine Open-Source-Plattform zum Erstellen von Desktop-, Web- und Mobilanwendungen, die nativ auf jedem Betriebssystem ausgeführt werden können. Das .NET-System umfasst Tools, Bibliotheken und Sprachen, die eine moderne, skalierbare und leistungsstarke Softwareentwicklung unterstützen. Eine aktive Entwickler-Community unterhält und unterstützt die .NET-Plattform.
In einfachen Worten ist die .NET-Plattform eine Software, die folgende Aufgaben ausführen kann:
- Übersetzen Sie den Code der .NET-Programmiersprache in Anweisungen, die ein Computergerät verarbeiten kann.
- Bereitstellung von Dienstprogrammen für eine effiziente Softwareentwicklung. Beispielsweise kann es die aktuelle Uhrzeit finden oder Text auf dem Bildschirm drucken.
- Definieren Sie eine Reihe von Datentypen, um Informationen wie Text, Zahlen und Datumsangaben auf dem Computer zu speichern.
Was ist eine .NET-Implementierung?
Verschiedene Implementierungen von.NET ermöglichen die Ausführung von .NET-Code auf verschiedenen Betriebssystemen wie Linux, macOS, Windows, iOS, Android und vielen anderen.
.NET Framework
.NET Framework ist die ursprüngliche .NET-Implementierung. Es unterstützt das Ausführen von Websites, Services, Desktop-Apps und mehr unter Windows. Microsoft veröffentlicht das .NET Framework in den frühen 1990er Jahren.
.NET Core
Ende 2014 führte Microsoft .NET Core ein, um die plattformübergreifende Unterstützung für .NET-Entwickler zu ermöglichen. Das Unternehmen veröffentlichte im November 2020 die neueste Version von .NET Core, .NET 5.0, und benannte sie in .NET um. Der Begriff .NET in diesem Artikel bezieht sich auf .NET 5.0. NET Core ist als Open Source auf GitHub verfügbar.
.NET Standard
.NET Standard ist eine formale Spezifikation verschiedener Funktionen (sogenannte APIs). Verschiedene .NET-Implementierungen können denselben Code und dieselben Bibliotheken wiederverwenden. Jede Implementierung verwendet sowohl .NET-Standard-APIs als auch eindeutige APIs, die für die Betriebssysteme spezifisch sind, auf denen sie ausgeführt.
Gründe für .NET
Einfache Entwicklung
Entwickler verwenden gerne .NET, weil es viele Tools enthält, die ihnen die Arbeit erleichtern. Mithilfe der Visual Studio-Suite können Entwickler beispielsweise schneller Code schreiben, effizient zusammenarbeiten und ihren Code effizient testen und korrigieren. Die Möglichkeit, Code zwischen Implementierungen wiederzuverwenden, reduziert die Entwicklungskosten.
Leistungsstarke Anwendungen
.NET-Anwendungen bieten schnellere Reaktionszeiten und benötigen weniger Rechenleistung. Sie verfügen über starke integrierte Sicherheitsmaßnahmen und führen serverseitige Aufgaben wie den Datenbankzugriff effizient aus.
Community-Support
.NET ist quelloffen, das heißt, jeder kann es frei verwenden, lesen und verändern. Eine aktive Entwicklergemeinschaft pflegt und verbessert die .NET-Software. Die .NET Foundation ist eine unabhängige gemeinnützige Organisation, die zur Unterstützung der .NET-Community gegründet wurde. Sie bietet Lernressourcen, Open-Source-.NET-Projekte und verschiedene Veranstaltungen für .NET-Entwickler.
Was sind die Komponenten der .NET-Architektur?
.NET hat eine modulare und optimierte Architektur. Benutzer können verschiedene Komponenten auswählen, um ihre Softwareentwicklungsanforderungen zu erfüllen.
Dies sind die drei wichtigsten .NET-Komponenten:
- .NET-Sprachen
- Frameworks für Anwendungsmodelle
- .NET-Runtime
Entwickler verwenden .NET-Programmiersprachen und Anwendungsmodellframeworks, um ihre .NET-Anwendungen zu erstellen. Die .NET-Runtime führt sie dann aus.
Was sind .NET-Programmiersprachen?
C# (ausgesprochen „C Sharp“), F# (ausgesprochen „F Sharp“) und Visual Basic sind die drei von Microsoft unterstützten Sprachen für die NET-Entwicklung. Verschiedene Unternehmen und Entwickler haben auch andere Sprachen entwickelt, die mit der .NET-Plattform funktionieren.
C#
C# ist eine einfache, moderne und objektorientierte Programmiersprache. Mit einer Syntax, die der C-Sprachfamilie ähnelt, ist C# für C-, C++-, Java- und JavaScript-Programmierer vertraut.
F#
F# hat eine leichte Syntax und benötigt sehr wenig Code zum Erstellen von Software. Es ist eine Open-Source-Sprache, die das Schreiben von prägnantem, robustem und leistungsfähigem Code erleichtert. Es verfügt außerdem über ein leistungsstarkes Programmierregelsystem und eine praktische Standardbibliothek zum Erstellen geschäftskritischer, korrekter, schneller und zuverlässiger Software.
Visual Basic
Visual Basic ist eine objektorientierte Programmiersprache, die von Microsoft entwickelt wurde. Mit Visual Basic können Sie schnell und einfach typensichere .NET-Apps erstellen. Typensicherheit ist der Grad, in dem eine Programmiersprache logische Kodierungsfehler entmutigt oder verhindert.
Common Language Infrastructure (CLI)-Sprachen
Sprachen wie ClojureCLR, Eiffel, IronPython, PowerBuilder und viele andere funktionieren auch auf der .NET-Plattform. Dies liegt daran, dass .NET die Common Language Infrastructure (CLI) implementiert. Sie können sich CLI als Vorlage für die Erstellung von .NET-kompatiblen Sprachen vorstellen.
Was ist die .NET-Runtime?
Die .NET-Runtime, auch Common Language Runtime (CLR) genannt, kompiliert und führt .NET-Programme auf verschiedenen Betriebssystemen aus.
Just-in-Time-Kompilierung
Die CLR kompiliert Code, während der Entwickler ihn schreibt. Während der Kompilierung übersetzt CLR den Code in die Common Intermediate Language (CIL). Beispielsweise hat in C# geschriebener Code eine englische Syntax und Wörter. .NET kompiliert oder übersetzt diesen Code in CIL. CIL-Code sieht anders aus, da es sich dabei um eine Maschinencode-Sprache auf niedrigerer Ebene handelt.
Ausführung
Die .NET-Runtime verwaltet die Ausführung von CIL-Code. CIL ist plattformübergreifend kompatibel und kann von jedem Betriebssystem verarbeitet werden. Plattformübergreifende Kompatibilität bezieht sich auf die Fähigkeit einer Anwendung, mit minimalen Änderungen auf mehreren verschiedenen Betriebssystemen ausgeführt zu werden. Beispielsweise kann eine Anwendung in C# unter Windows, Linux oder macOS ohne Codeänderungen ausgeführt werden. Eine solche Anwendung wird als plattformübergreifende Anwendung bezeichnet.
Was sind Frameworks für .NET-Anwendungsmodelle?
Die Anwendungsmodell-Frameworks sind eine Sammlung von Entwicklertools und Bibliotheken, die eine schnelle und effiziente .NET-Projektentwicklung unterstützen. Für verschiedene Arten von Anwendungen gibt es unterschiedliche Frameworks, wie die unten aufgeführten.
Webanwendungen
Das ASP.NET-Framework erweitert die .NET-Entwicklerplattform speziell für die Erstellung webbasierter Anwendungen. Es unterstützt Webtechnologien wie REST-APIS, HTML, CSS und JavaScript. Es bietet eine integrierte Benutzerdatenbank mit Multi-Faktor- und externer Authentifizierung. ASP.NET unterstützt branchenübliche Authentifizierungsprotokolle mit einem integrierten Sicherheitsmechanismus, um Ihre .NET-Apps vor Cyberangriffen zu schützen.
Mobile Anwendungen
Sie können Xamarin/Mono verwenden, um .NET-Apps auf allen wichtigen mobilen Betriebssystemen, einschließlich iOS und Android, auszuführen. Xamarin enthält Xamarin.Forms, ein Open-Source-Framework für mobile Benutzeroberflächen. .NET-Entwickler verwenden Xamarin.Forms, um eine konsistente Benutzererfahrung auf allen mobilen Plattformen zu schaffen. Hierbei können alle .NET-Apps gleich aussehen, auch auf verschiedenen Mobilgeräten.
Desktop-Anwendungen
Sie können Xamarin für die Entwicklung von Desktop-Anwendungen verwenden. Darüber hinaus erweitert Universal Windows Platform die Entwicklung von .NET Windows 10-Anwendungen. Windows Presentation Foundation und Windows Forms sind weitere Frameworks für das Design von Benutzeroberflächen unter Windows.
Andere Anwendungen
Mit ML.NET können Sie benutzerdefinierte Machine-Learning-Modelle entwickeln und in Ihre .NET-Anwendungen integrieren. Sie können .NET IoT-Bibliotheken verwenden, um Anwendungen auf Sensoren und anderen intelligenten Geräten zu entwickeln. Für alle Lösungen, die in den Frameworks nicht verfügbar sind, finden Sie viele spezifische Funktionsbibliotheken im öffentlichen NuGet-Repository. Mit Nuget können Sie viele .NET-Bibliotheken für fast jeden Zweck erstellen, freigeben und verwenden.
Wie kann AWS .NET-Entwicklern helfen?
.NET-Entwickler können Anwendungen mit .NET auf AWS schneller erstellen. Es bietet einen Service für jede Aufgabe, sodass Sie schnell Machbarkeitsnachweise erstellen können, ohne sich um die Verwaltung der Infrastruktur kümmern zu müssen. Im Folgenden finden Sie einige Beispiele für AWS-Services für die .NET-Entwicklung:
- AWS Elastic Beanstalk übernimmt die Anwendungsbereitstellung und betriebliche Aufgaben.
- Amazon EC2 bietet eine sichere und anpassbare Rechenkapazität in der Cloud.
- Amazon Aurora automatisiert die Datenbankverwaltung.
.NET-Entwickler können auch AWS-Open-Source-Tools und -Bibliotheken wie die folgenden verwenden:
- Das AWS SDK für .NET erleichtert Linux- und Windows-Entwicklern das Erstellen von .NET-Anwendungen.
- Das AWS Code Examples Repository hilft Ihnen dabei, Anwendungen zu verstehen, die mit AWS-Services funktionieren.
- .NET Digital Library enthält ein Archiv mit Videos, Tutorials, Blogs und anderen Entwicklerressourcen für .NET.
Mit der Veröffentlichung von .NET 6 können .NET-Entwickler noch mehr von der Leistung und den Kosteneinsparungen von AWS mit Linux profitieren. .NET 6-Anwendungen können bereits viele AWS-Services ohne zusätzlichen Aufwand nutzen. Dieser Leitfaden beschreibt den Support für .NET 6, der von AWS-Services und -Tools bereitgestellt wird.
Sie können mit .NET on AWS beginnen, indem Sie ein .NET on AWS-Training absolvieren, .NET-Anwendungen auf AWS erstellen oder Ihre erste .NET-Anwendung auf AWS starten.
AWS und .Net – Nächste Schritte
Sie erhalten sofort Zugriff auf das kostenlose Kontingent von AWS.
Beginnen Sie mit der Entwicklung mit AWS in der AWS-Managementkonsole.