Microsoft .NET

WPF
Neben der klassischen WinForms GUI unterstützt das .NET-Framework seit der 2006 erschienenen Version 3.0 eine vollständig neue Art von GUI, die Windows Presentation Foundation (WPF). Mit WPF verabschiedet sich Microsoft von der noch aus den Anfangstagen von Windows stammenden pixelorientierten GUI. Das neue Framework basiert auf der inzwischen von jedem PC unterstützten Direct3D Schnittstelle und ist vollständig vektororientiert. Design und Modellierung der GUI erfolgen nun nicht mehr direkt in einer Programmiersprache, sondern auf Basis der auf XML basierenden Beschreibungssprache Extensible Application Markup Language (XAML).
Durch den konsequent objektorientierten Ansatz lassen sich Oberflächen effizient und programmeinheitlich gestalten, ohne auf die Möglichkeiten einer individuellen Anpassung verzichten zu müssen. Ein Beispiel hierfür ist die immer wiederkehrende Anforderung, große und sich in Echtzeit verändernde Datenmengen am Bildschirm übersichtlich darzustellen. Für derartige Anwendungen haben wir eigene .NET-Erweiterungen und Komponenten entwickelt, welche sich auf spezielle Anforderungen der einzelnen Applikationen anpassen lassen.
telos nutzt diese Technologie seit deren Einführung sowohl in Kundenprojekten als auch für Eigenentwicklungen. Wie mächtig und ansprechend Software auf .NET-Basis ist, können Sie am Beispiel unserer Applikation I2C Studio selbst entdecken. Dieses Programm steht zum kostenlosen Download bereit.
Unterschiede zu klassischen Programmiersprachen
Das .NET-Framework weist einige elementare Unterschiede zu anderen Programmiersprachen wie Visual Basic oder C++ und anderen Frameworks wie Microsoft MFC auf.
CLI (Common Language Infrastructure)
Die Compiler erzeugen bei .NET keinen plattformspezifischen Code (z.B. für Intel x86 oder x64), sondern einen unabhängigen Bytecode, der als Common Language Infrastructure (CLI) bezeichnet wird. Erst zur Laufzeit wird dieser von einem Just-In-Time-Compiler namens Common Language Runtime (CLR) in plattformabhängigen Maschinencode übersetzt. Dieses ermöglicht die Ausführung des gleichen Executables auf unterschiedlichen Plattformen, was z.B. den Übergang von 32-Bit auf 64-Bit deutlich vereinfacht.
Sprachunabhängigkeit
Während es bei herkömmlichen Programmiersprachen schwer bis unmöglich ist, verschiedene Sprachen in einem Projekt gleichzeitig zu verwenden, ist es Microsoft mit .NET gelungen, dieses Problem zu entschärfen. Microsoft selbst bietet in der Entwicklungsumgebung Visual Studio drei verschiedene Programmiersprachen an, die für .NET verwendet werden können: C#, Visual Basic und (Managed) C++. Andere Hersteller bieten weitere Sprachen mit .NET-Unterstützung an wie z.B. Delphi oder Labview.
Die Verwendung unterschiedlicher Sprachen bietet sich unter anderem deshalb an, weil jede Sprache für bestimmte Bereiche Vorteile bietet. So wird die GUI selbst zumeist in C# implementiert, da die existierenden grafischen GUI Design-Tools in der Regel C#-Code erzeugen.
Für besonders zeitkritische Codebereiche bietet sich stattdessen C++ an, das in .NET eine Sonderstellung einnimmt. Nur in C++ ist eine Synthese von plattformunabhängigem CLI- und nativem Maschinencode möglich. In der Nomenklatur von .NET wird ersteres als „Managed“ (mit zusätzlichen .NET spezifischen Sprachelementen) und letzteres als „Unmanaged“ C++ bezeichnet.
Umfangreiche Klassenbibliothek
Die sehr umfangreiche Klassenbibliothek von .NET ermöglicht es, viele Anwendungen mit wenig Aufwand zu realisieren, was zum einen die Entwicklungszeit und zum anderen die Entwicklungskosten reduziert.
Hoher Sicherheitsstandard
Dank des Verzichts auf nativen Code gehören die gefürchteten Sicherheitslücken wie z.B. Speicherverletzungen der Vergangenheit an.
Multi-Threading
Im Zeitalter der Multi-Core CPUs wird die Unterstützung für Programmierung mit Threads immer wichtiger, um die vorhandenen Ressourcen optimal auszunutzen. Das .NET Framework ist dafür bestens gerüstet.
Alternativen
Im Opensource-Bereich entstand mit Mono eine freie Variante von .NET, so dass Applikationen auch unter Linux nutzbar sind. Das Unternehmen Mono firmierte um zu Xamarin und wurde schließlich durch Microsoft gekauft. Dies tat dem Produkt Xamarin aber keinen Abbruch. Xamarin ermöglichte bis vor kurzem die Entwicklung von Applikationen für native Android-, iOS- und Windows-Apps.
Der Support für Xamarin wurde inzwischen eingestellt, als Nachfolger bietet Microsoft das .NET Multi-platform App UI (MAUI) an.
2016 erschien mit der Universal Windows Platform ein neuer Ansatz für Frameworks, die auf mehreren Windows-Plattformen lauffähig sind.
- Haben Sie weitere Fragen zu .NET oder suchen Sie einen kompetenten Partner?
- telos ist seit 1988 aktiv. Nutzen Sie unser Ingenieurteam und die Erfahrung mehrerer Jahrzehnte!
- Nehmen Sie bitte Kontakt mit uns auf 040 450173 60
- Wir "plaudern" auch gerne mit Ihnen zum Thema