Erklärung des Begriffs: .NET Framework 4.0 (.NET FX 4.0)
Was ist .NET Framework 4.0 (.NET FX 4.0)?

Zurück zur Stichwortliste



Begriff .NET Framework 4.0
Abkürzung .NET FX 4.0
Synonyme/Aliase

Erläuterung des Begriffs .NET Framework 4.0

Das .NET Framework 4.0 (ursprünglich unter dem Codenamen "Hawaii" entwickelt) und erscheint voraussichtlich Anfang 2010. In .NET 4.0 und Visual Studio 2010 sind keine Revolutionen, aber die Entwickler können sich dennoch auf viele Leckerbissen freuen. Lang ersehnt sind die Vervollständigungen bei WPF und die clientseitige Datenbindung in ASP.NET. Das Entity Framework reift deutlich. Die neue Workflow-Bibliothek muss sich noch in der Praxis beweisen.

Eine erste Vorab-Version ist am 28.10.2008 auf der PDC 2008 erschienen (Version 4.0.11001).
Beta 1 ist erschienen am 13.5.2009
Beta 2 ist geplant für Oktober 2009

Ausgewählte Neuerungen




CLR 4.0
- Laden von CLR 2.0 und 4.0 in einem Prozess
- Type Embedding: Verbesserungen für COM-Interopabilität durch Einbetten von Typen in aufrufende Assembly
- Type Äquivalenz: Deklaration äquivalenter Schnittstellen durch Annotationen
- Dynamic Language support: Dynamic Language Runtime (DLR) in CLR integriert
- Code Contracts: Pre- and Postconditions für Methodenaufrufe
- Garbage Collector sendet ein Ereignis an Anwendung, bevor er seine Arbeit beginnt.
- Spezielle Corrupted State Exceptions

Sprachen C# 4.0 und Visual Basic 10.0
Siehe Csharp 4.0
Siehe Visual Basic 10.0

ADO.NET Entity Framework Version 2:
- Unterstützung für Forward Engineering/Code-First (Erzeugen der Datenbank auf Basis des Models aus dem Designer heraus. Aber kein Round Trip Engineering bei Veränderungen, d.h. Dann muss die Datenbank erst komplett gelöscht werden)
- Persistence Ignorance: Unterstützung für ORM mit POCOs
- Berechnete Eigenschaften (Model Definied Functions)
- Implizites Nachladen (Lazy Loading)
- Einfacheres Anpassen der Codegenerieren (Codegeneration ist ein Workflow der Windows Workflow Foundation)
- Unterstützung für Table Valued Functions (TVF)

ASP.NET 4.0: Neue Programmierkonzepte
- Model-View-Controler-Framework (MVC) für ASP.NET als Alternative zum Webform-Programmiermodell
ASP.NET 4.0: Erweiterungen für AJAX-Funktionen
- Clientseitige Steuerelemente und AJAX-Steuerelemente wie im AJAX Control Toolkit sollen zum Kern von ASP.NET gehören (z.B. TreeView, Grid, Chart, Progress Bar).
- Clientseitige Datenbindung mit Datenquellen (Sys.Data.DataSource) und einer JavaScript-basierten Vorlagensyntax (früher "XML Script" in Zeiten von "Atlas" und den "ASP.NET AJAX Futures"), Unterstützung für Editieren, Blättern, Filtern und Sortieren
- Animationen im Browser
- Unterstützung für Drag&Drop
- AJAX für Browser auf mobilen Endgeräten
- Unterstützung für AJAX in ASP.NET MVC-Anwendungen
- AJAX mit REST-Services

ASP.NET 4.0: Sonstiges
- Unterstützung für eigene Zwischenspeichermechanismen (Custom Caching)
- Unterstützung für Zwischenspeicherung mit "Velocity" (Velocity ist ein auf .NET basierendes, auf mehrere Server verteilbares Zwischerspeichersystem.)
- Erweiterung für dynamische Datenwebseites (z.B. Filter und eigene Geschäftsobjekte als Basis)
- Vergabe eigener Client-ID bei Serversteuerelementen
- Verbesserung der Zugänglichkeit durch Unterstützung für WAI-ARIA
Verbesserungen in Visual Web Developer 2010 / Visual Studio 2010
- Einfachere Veröffentlichen von Webanwendungen (verschiedene .config-Dateien, Austausch von Inhalten der Konfigurationsdatei, Veröffentlichungsasssistent für Webprojektdateien und Datenbanken)
- CSS2-Unterstützung im Webdesigner
- Navigationsbaum für JavaScript-Code
- Schnellere JavaScript-IntelliSense
- Unterstützung für Jquery
- Build Tools für JavaScript
- Berücksichtigung der XML-Kommentare auch im aktuellen JavaScript-Dokument

WCF 4.0
- Verbesserungen für REST-Dienste (REST Toolkit)
- Verbesserungen für Korrelation von nachrichten
- Deklarative Dienstbereitstellung (XAML), Dateinamenserweiterung .xamlx
- Neue Standards: WS-Discovery, WS-I RSP, WS-BusinessActivity, WS-I BP 1.2
- Neue Transportprotokolle: UDP, MQ und In-Process
- Duplex durable messaging
- Windows Application Server "Dublin"

WF 4.0
- Komplette Neuimplementierung von Laufzeitumgebung, Aktivitäten und Designer (Prinzipien werden aber beibehalten)
- Komplett neuer Designers mit einfacherer Bedienung
- Flow Charts Workflows
- Rein XML-basierte Workflows (XAML)
- Mehr Aktivitäten (Datenbanken, PowerShell, etc.)
- Leistungssteigerung
- Aktivitäten erhalten Daten durch Parameter anstelle von Dependency Properties

WPF 4.0
- WPF Toolkit integriert (Ribbon Control, Calendar, DatePicker, DataGrid) "Business focused controls"
- Übernahme von Funktionen aus Silverlight (Visual State Manager, Deep Zoom)
- Multi-Touch-Unterstützung (für Windows 7)
- Verbesserungen Text Rendering
- Pixel Level Layout
- Leistungssteigerungen

Sonstige Klassen (FCL 4.0)
- Paralleles Programmieren mit PLINQ und Task Parallel Library (TPL)
- Managed Extensiblity Framework (MEF), alias Extensible Component Model: Einfache Erweiterbarkeit von Anwendungen durch Add-Ins (Namensraum: System.ComponentModel.Composability)
- Klasse Tupel
- Klasse SortedSet
- Mengenklassen für Dateien und Ordner mit Schnittstelle Ienumerable (statt wie bisher Arrays)
- Code Contracts (Prä- und Post-Bedingungen) (Namensraum: System.Diagnostics.Contracts)
- Große Zahlen (System.Numerics.BigInteger und System.Numerics.ComplexNumber)
- Memory Mapped Files (System.IO.MemoryMappedFiles)
- Verbesserungen für ResourceManager: Berücksichtigung der Windows-UI-Einstellungen

Querverweise zu anderen Begriffen im Lexikon

Windows Workflow Foundation
Windows Application Server
Visual Web Developer 2010
Dynamic Language Runtime
ADO.NET Entity Framework
System.ComponentModel
Task Parallel Library
Model-View-Controler
ASP.NET AJAX Futures
Serversteuerelement
Konfigurationsdatei
Visual Studio 2010
System.Diagnostics
Garbage Collector
Visual Basic 10.0
Steuerelement
IntelliSense
ASP.NET AJAX
IEnumerable
Annotation
XML Script
Powershell
JavaScript
CSharp 4.0
System.IO
Exception
Windows 7
Datenbank
Velocity
Assembly
TreeView
Caching
Add-In
Dublin
Hawaii
Atlas
Java