Les dir bitte hierzu zudem den Thread PHP und Programmierstil durch. Dort wurde ähnliches auch diskutiert.
Das ich Java liebe, ist kein Geheimnis, aber ich denke bei dir passt Java wirklich am besten.
Auch der Rat C++ ist nicht schlecht. Wenn du eine von beiden Sprachen lernst, machst du auf jeden Fall keinen fehler.
C währe auch eine möglichkeit, aber die entwicklung beim Programmieren, geht eindeutig in richtung OOP und C muss mann nicht lernen um C++ zu verstehen.
Erstens sind diese 3 Sprachen die in der Industrie mit (leider VB) die beliebtesten, meistgenutzten Sprachen .
Zweitens decken diese Sprachen so viel an Wissen ab, damit lässt sich einfacher seine Kenntnisse auf andere Sprachen ausweiten.
Java ist etwas einfacher zu erlernen, als das bei C++ der Fall ist. Sobald aber die Hürde des Sprachumfang lernens überwunden ist, steht Java in Komplexität C++ in nichts nach.
Gerade höhere Themen wie Enterprise Java Beans oder ähnlichem ist nicht allzu einfach zu verstehen.
Auch in C++ lässt sich mit viel Sorgfalt sehr portable Programmieren. Nicht plattformunabhängig, aber portabel.
Java hingegen ist! Plattformunabhängig.
C++ läuft schneller als Java. Java kommt auf ca 85 - 90 % der Geschwindigkeit von C++, tendenz steigend (mit jeder neuen Generation).
Nachteil bei Java: Langsame / Träge wirkende Oberflächen mit Swing.
Swing (sprich die GUI Klassen von Java) hat den Nachteil das es nicht auf nativen GUI Elementen des Betriebssystem aufsetzt sondern sämmtliche Elemente selber zeichnet. Gerade auf älteren Rechner kann dies sich doch recht negativ auswirken.
Bei Rechner der 2Ghz Klasse und aktuellem 1.4 Java SDK hat sich das Problem so gut wie gelöst.
Andere alternative, von mir auch bevorzugt, SWT. Setzt auf nativen Biblotheken des Betriebssystems auf und ist dementsprechend so schnell, das mann absolut keinen Unterschied zwischen nativen z.b C++ Programmen die MFC oder WinAPI nutzen und der SWT GUI zu spüren ist.
Ich hoffe ich werde jetzt nicht von den VB Anhänger gevierteilt, aber Basic ist eine sterbende Sprache. Einzig Microsoft hält noch ein Basic Dialekt der produktiv eingesetzt wird. Aber auch hier ist eine ganz klare Tendenz weg von VB zu C# spürbar auch wenn dies gern bestritten wird um nicht böses Blut zu sähen.
Dennoch sind die meisten .net Vorträge in C# gehalten. In den .net Büchern wird ebenso C# zumeist bevorzugt, und auch im ersten Framework steht im zugehörigen MSDN Artikel der Rat das .net Framework mit C# zu erlernen.
Apropro C#:
Auch C# währe eine gute Möglichkeit einer guten, fähigen Sprache. Da C# in sehr vielen Teilen identisch ist wie Java (ist als Java Clone gedacht) , gelten viele Vorteile von Java auch für C#. C# führte recht hilfreiche Dinge ein wie ein foreach zum durchlaufen von Schleifen oder das Autoboxing von typen in ihre Wrapperklassen, was bei Java noch etwas umständlicher ist. Jedoch hat Sun richtig reagiert und so wie MS bei Sun sich Java als Vorlage für C# genommen hat, so hat nun Sun diese Vorteile auch in der kommenden Version implementiert. Die 1.5 Alpha ist schon erhältlich.
Nachteil C#: Plattformunabhängigkeit. Diese ist einfach nicht gegeben. ..
Es gibt zwar das mono Projekt welches sich zum Ziel gesetzt hat die .net Plattform auf Linux zu implementieren, jedoch wird vieles aufgrund von Patenten auf seiten Microsofts nicht möglich sein, weshalb eine Applikation angepasst werden muss bevor sie auf beiden Plattformen laufähig ist.
Ausser mann verwendet mono auch auf der Windows Plattform. Jedoch ist mono immer noch nicht released, und das wird auch noch eine weile dauern.
Plattformunabhängigkeit 2: Handy, Palm Markt. So ziemlich jedes Handy das heutzutage ausgeliefert wird, ist Java Fähig. Sprich es ist relativ einfach Midlets (Applikationen für mobile Geräte) zu entwickeln, ob dies Spiele oder Anwendungen sind, alles ist recht einfach möglich mit Java. Microsoft versucht seid 3 Jahren ein Standbein im Handy Markt zu bekommen. Bisher gabs nur schlappen, abstürze des Handybetriebssystems bei dem einem Hersteller, Lizenzstreitigkeiten mit dem anderen Herrsteller, weshalb .net als Handy Entwicklungssprache noch in den Sternen steht, zumal Siemens, Sonyerricson, Nokia, Motorrolla viel Geld in die Java J2ME Entwicklung gepumpt haben.
Letzter Punkt:
Delphi/Kylix. Bzw Object Pascal.
Eine schöne Sprache, die einem gut zum Programmieren lernen dienen kann. Oft unterschätzt und deshalb nicht ganz so oft anzutreffen wie die anderen Sprachen. Nachteil: Abhängigkeit von Borland, da diese einzige Produktive Umgebung bieten können um Object Pascal zu programmieren . Auch portable Programmierung möglich, soviel ich weiss aber nur auf 2 Plattformen beschränkt Windows / UNIX(Linux)
Hoffe das hilft etwas.
PS: schönes neues!