Version 3.0 von C#: Das sind die fünf wichtigsten Änderungen

Die Version 3.0 der Programmiersprache C# wird im Herbst eine Reihe von neuen Funktionen einführen. Darunter sind Erweiterungsmethoden und anonyme Typen. ZDNet erklärt die Neuerungen - und was sie Entwicklern bringen.

Microsoft plant die Veröffentlichung von C# 3.0 zeitgleich mit Visual Studio 2007 im vierten Quartal 2007. ZDNet stellt für Entwickler, die nach flexibleren Lösungen suchen, jetzt schon die fünf wichtigsten Änderungen vor.

1. Implizit typisierte lokale Variablen

C# 3.0 führt ein neues Schlüsselwort namens „var“ ein. Dieses Schlüsselwort erlaubt dem Entwickler das Deklarieren einer Variablen, ohne ausdrücklich deren Typ angeben zu müssen. Mithilfe des Schlüsselwortes var könnte man einen String etwa wie folgt instantiieren:


var myData = "Hier meine Daten";

Es keinen Hinweis darauf gibt, dass es sich bei der Variablen myData um einen String handelt, eine Angabe, die in C# 2.0 noch erforderlich gewesen wäre.

Auch wenn var die implizite Typdeklaration erlaubt, ist damit keine Abkehr von der starken Typisierung von C# verbunden. Das Schlüsselwort var funktioniert nur bei der Deklaration der Variablen. Sobald die Variable deklariert ist, wird auf ihren Typ geschlossen und dieser entsprechend zugewiesen. Der Typ einer mit var deklarierten Variablen kann an späterer Stelle im Code nicht mehr geändert werden.

Dieser Code zum Beispiel funktioniert nicht:


var myDate = DateTime.Now;
myDate = "Hallo.";

Ein interessantes Ergebnis des var-Schlüsselwortes ist, dass Entwickler keine redundanten Angaben zum Typ mehr machen müssen. Um zum Beispiel in C# 2.0 ein Customer-Objekt zu deklarieren, müsste man folgenden Code verwenden:


Customer myCustomer = new Customer();

Mit dem neuen Schlüsselwort var wird hieraus:


var myCustomer = new Customer();

Eine weitere interessante Funktion des var-Schlüsselwortes besteht darin, dass man Aufrufe einer Methode, die ein bestimmtes Objekt zurückgibt, nicht mehr ändern muss. Soll zum Beispiel in C# 2.0 eine Methode aufgerufen werden, die ein Customer-Objekt zurückgibt, muss Folgendes geschrieben werden:


Customer myCustomer = GetByName("Zach");

Sollte die Methode GetByName irgendwann geändert werden, so dass sie etwas anderes als ein Customer-Objekt zurückgibt, ließe sich dieser Code nicht mehr kompilieren. Bei Verwendung des Schlüsselwortes var braucht man sich über den Typ des von GetByName zurückgegebenen Objekts keine Gedanken mehr zu machen:


var myData = GetByName("Zach");

Jetzt könnte die Methode GetByName geändert werden und zum Beispiel ein Person-Objekt zurückgeben, aber der Methodenaufruf wäre wegen der Verwendung von var immer noch gültig.

Themenseiten: Anwendungsentwicklung, Microsoft, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Version 3.0 von C#: Das sind die fünf wichtigsten Änderungen

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *