Dazu wurde zwar auch schon etwas gesagt, aber noch etwas:
Zitat von
Cöster:
Variablen/Methoden müssen nicht extra in einem gesonderten Abschnitt deklariert werden. Dadurch spart man sich Zeilen und man hat die Deklaration gleich dort stehen, wo die Variable im Code verwendet wird.
Man kann in Delphi ja z.B. einfach schreiben var TAB, dann Variablenname TAB Variablentyp, zack, steht das über dem begin der aktuellen Methode. Geht natürlich erst ab Delphi 2006 / Turbo Delphi oder so.
Dass man in C# zwischendurch Variablen deklarieren kann, hat Vor- und Nachteile. Nachteile vor allem bei der Lesbarkeit. Und wenn man sich daran hält, dass einzelne Methoden / Routinen nicht zu lang sein sollten, ist ohnehin nicht viel Quelltext zwischen Deklaration und Verwendung...
Zitat von
Cöster:
Operatoren lassen sich überladen. Mit überladenen Operatoren kann man Code besser lesbar machen imo
Die foreach-Schleife macht das Durchlaufen von z. B. Arrays ohne Laufvariable möglich
Geht beides wie auch schon gesagt wurde auch in Delphi. Und das schon ab Delphi 2006 / Turbo Delphi. In der Version und den folgenden wurden (wie auch in der
IDE) viele Erweiterungen in der Sprache eingebaut.
Grundsätzlich hat C# als Sprache durchaus einige Vorteile, insbesondere mit Linq und anderen Features des .NET Framework. Dafür finde ich das Visual Studio als Oberfläche deutlich schlechter als die Delphi
IDE von D2006 und höher (ok, besser als die alte von D7 oder die von #Develop ist das Visual Studio schon sehr).
Was die Sprache angeht, so hat das auch schon genannte Delphi Prism da auch sehr viele interessante Features. Das ist auf jeden Fall einen Blick wert.