Nunja. bis auf die hardwarenahe Programmierung, stehen sich heutige Programmiersprachen eigentlich in kaum noch was nach. Wenn man wirklich programmieren kann, lässt sich so gut wie jedes Problem lösen (sofern man nicht von einer Runtime o.Ä. abhängig ist, die die komplizierten Sachen managed

)
Ich persönlich finde, dass wenn man "progammieren" kann, die Sprache eigentlich nur noch eine Frage des Geschmacks ist, und unter Umständen eine Frage des zu realisierenden Projekts.
Also Java ist jetzt nicht so mein Fall, da ich die Runtime irgendwie nicht mag. Und GUIs mit Java empfinde ich wie einen 100Meter-Lauf, mit Krückstock

Andererseits ist die OOP dort von Vorteil, was ich mir bei großen Projekten, und vor Allem auch Spielen sehr gut vorstellen kann.
.NET ist irgendwie so ein Java-Abklatsch und sowieso nicht mein #1-Symphatisant, weil mir diese extreme MS-Abhängigkeit Sorgen macht, aber however, das ist Geschmackssache, und warscheinlich bald unabdingbar: Die WinAPI wird sich in den nächsten Jahren weiter zurückziehen, und dann wird es kaum eine andere Möglichkeit geben :-/
Also wenn ich jetzt neu anfangen würde, dann würde ich mich an C++ ranmachen., nicht nur, dass du viel besser verstehst, was in deinem PC so abläuft, nein, du hast die
-> freie Wahl vieler Compiler (darunter OpenSource)
-> viele Beispiele
-> unendlich viele Optimierungsvarianten
-> Die Komfortablität von Objekten, kannst aber auch eine funktionelle GUI erstellen (und ja, das ist wirklich ein riesiger Vorteil. Ich hasse GUI mit Objekten ^^.Ich liebe Callbacks, und empfinde sie als logischer...)
-> Unabhängigkeit von Runtimes
Der Nachteil ist das Plattforumunabhängige: Die Sachen, die auf .NET für Win laufen, laufen auch auf .NET für Linux. Nur: C++ ist kein .NET. Das heißt, selber basteln, und mit beiden Plattforem auseinandersetzen. Das ist wirklich ein großer Nachteil, aber wenn man sich für eine Plattform eh entscheidet, dann ist es ok.
Vielleicht würde ich tatsächlich versuchen, mir mal "D" anzuschauen, aber da habe ich so wirklich noch garkeinen Überblick drüber. C# sieht sehr geil aus, ist aber leidergottes ein pures .NET-Ding.
Ich hoffe, dass eines Tages MONO mächtig genug wird, um das Framework zu ersetzen, und wir zumindest ein *kleines* Bisschen Sicherheit haben, um die Plattformunabhängigkeit zu gewährleisten.
Also hab keine Scheu: Wenn du wirklich Programmieren kannst, dann wirst du sehen: Programmiersprachen sind wie Autos: Wenn du fahren kannst, ist es nur noch eine Sache der Gewöhnung (Einparken, Verbrauch, Beschleunigung, Bremswirkung). Fahren kann man aber so gut wie sofort, und bremsen/beschleunigen auch. Nur muss man sich ab und zu an andere Eigenschaften eben gewöhnen.
Gr33tz
Tafkadasom2k5