Servus Achim,
hmm.... ich versuche Dir mal in ein paar Worten einen Überlick zu geben. Zugegeben wird der weder vollständig noch absolut korrekt sein (eher lückenhaft und nciht alle Aspekte berücksichtig)
Vielleicht hilft es jedoch ein bisschen sich zu orientieren.
ANSI C:
...gehört zu den Ältesten Programmiersprachen, entsprechend dürftig sind einige der Funktionalitäten. Auch konzeptionell ist es noch... na sagen wir nicht ganz "up to date". Hierbei handelt es sich um eine prozedurale Programmiersprache, keine Konzepte der
Objektorientierung. Der grosse Vorteil ist die Plattformunabhängigkeit, läuft sowohl auch Windows, Unix, Linux... Ist aber alles Andere als komfortabel zu programmieren und falls es um Userinteraktion geht auch etwas mühsam (Input/Output in der Regel in einer Konsole, z.Bsp. ein DOS Fenster oder...)
Performance: Normalerweise hervorragend...
Mehr zu C findest Du
hier
C++
...der "Nachfolger" von C. Zumindest historisch betrachtet da C++ nicht nur Neuerungen in Form neuer Bibliothekten besitzt sonder auch konzeptionell gereift ist. Plattformunabhängigkeit KANN gewährleistet sein, muss es aber nicht. Es gilt hier bei Verwendung der Headerfiles (ich nannte es vorher Bibliothek im übergeordneten Sinn) zu prüfen für welche Plattformen sie geeinget sind. Ich erwähnte die Reifung... C++ bietet im Vergleich zu C erstmals die Verwendung der
Objektorientierung.
Sowohl C wie auch C++ bietet maschinennahe Programmierung, entsprechend tief ist der Level, erklärt jedoch auch die Performance
Mehr findest Du
hier
Java
ist im Vergleich zu C und C++ eine "neuere" Programmiersprache, entwickelt von SUN Microsystems. Hierbei handelt es sich ebenfalls um eine objektorierntierte Sprache... bietet eine unglaubliche Menge an Packages (=Bibliothek) mit Methoden zu unterschiedlichsten Verwendung. Deutlich komfortabler wie C, meiner Meinung nach auch wie C++ und bei weitem nicht so maschinennah.
Erwähnenswert wäre noch: Java benötigt eine entsprechende Laufzeitumgebung welche im Prinzip für nahezu jede Plattform verfügbar ist.
Weiterhin findet man wie auch bei C++ massenhaft freien Source Code.
Sei noch folgendes erwähnt: Im Vergleich zu C# und VB.NET ist die Erstellung eines GUI's (also einer Programmoberfläche) der Horror...
Natürlich gibts mittlerweile Hilfsmittel, die erleichtern die Sache.
Im Grossen und Ganzen gehört es jedoch zu den verbreitetsten Sprache, selbst C++ ist im Vergleich rückläufig.
Eine hilfreiche und hervorragende Entwicklungsumgebung, kostenlos, mit Updatefunktionalität und Pluginkonzept und und und... findest Du
hier (Eclipse) Gehört zum besten Entwicklungswerkzeug mit dem ich je gearbeitet habe. Ich habe gesehen es gibt mittlerweile auch einen C++ Kompiler, sogar C# habe ich bereits entdeckt... sozusagen eine multifunktionale, sprachunabhängige Entwicklungsumgebung.
Mehr zu Java findest Du
hier
Visual Basic 6.0
Eine Sprache die von Microsoft entwickelt wurde und ganz bestimmt nicht plattformunabänig ist, eigentlich für die Micrsoftwelt konzipiert wurde. Für Hobbyprogrammier jedoch relativ schnell, komfortabel und einfach zu erlernen, egal ob man nun ein GUI (Programm mit Oberfläche) erstellt oder lediglich ein Programm für einen Hintergrundprozess (also ohne Userinteratkion)
Visual Basic ist annähernd objektorientiert, obwohl es eigentlich eine prozedurale Sprache darstellt. Einige wenige Konzepte der Objektorientierung werden nicht unterstützt... Schlagwörter die man hier gerne sieht sind ActiveX, COM und DCOM (somti auch die Abhängigkeit zur Windows Registry-"Hölle") Dürfte also bei Vista nur noch eine gewisse Zeit lang ein Thema sein. (Vista selbst soll soweit ich gelesen habe etwas ähnliche wie die Registry besitzen, selbst jedoch nciht verwenden... abgesehen davon ist auch diese Info älter, da ändert sich derzeit so schnell was)
Eine kostenlose Entwicklungsumgebung kenne ich nicht... vermutlich gibt es jedoch wie bei VB.NET und C# eine abgespeckte Variante des Micrsoft Visual Studios 6.0
Was noch erwähnenswert wäre: Wird meines Wissens nach nicht länger supported resp. der Support müsste bald ablaufen. Nachfolger ist VB.NET resp. C#
Ach noch was... der Compiler ist meiner Meinung nach unter aller Sau!! Findet gewisse Fehler einfach nicht, einfach zum kotzen...
Trotzdem ist es für einen Einsteiger nicht die schlechteste Sprach, ich würde dann jedoch eher zu C# tendieren auch wenn Syntaktisch VB.NET der Nachfolger ist. Gleich mehr dazu...
Mehr zu Visual Basic findest Du
hier
C# udn VB.NET
Beides stammt von Microsoft, ist deren aktuelle Sprache...
historisch betrachtet deutlich jünger als Java und Microsofts Versuch Martkanteile zurück zu erobern.
Absolut objektorientiert und auch das neue Visual Studio ist sehr komfortabel, bietet verschiedene coole Features zur Verwendung und Generierung.
Beide Sprachen C# und VB.NET erfordern wie Java eine Runtime Umgebung, das Micrsoft .NET Framework welches man vom Windows Update kennt
Im Prinzip, unter der Syntax, handelt es sich um die gleiche Sprache resp. gleicher Code wird generiert. C# richtet sich syntaktisch eher an Java aus, ist selbst C++ stellenweise nicht unähnlich. VB.NET ist syntaktisch ganz klar der Nachfolger von Visual Basic.
Plattformunabhängigkeit: Derzeit noch nicht gewährleistet, jedoch Portierungen im Gange. Meines Wissens nach ist Linux bereits nahezu vollständig unterstützt, die Info ist jedoch bereits etwas älter...
Auch andere Plattformen sollten zukünftig unterstützt werden.
Grosser Komfortvorteil ist ganz bestimmt bei der CUI PRogrammierung, hab nie einfacheres Werkzeug mit mehr Möglichkeiten gesehen.
Man muss wohl fairerweise dazu sagen dass sie wohl konzeptionell Einiges von Java übernommen haben, haben jdoch auch gewisse Dinge besser gemacht
. Vermutlich gibts auch Dinge die sie schlechter gemacht haben, allerdings stecke ich nicht soweit drin dass mir das aufgefallen wäre.
Empfehlenswert, falls Dich das interessiert, wäre vorzugsweise C# zu verwenden. VB.NET ist sozusagen supported, C# jedoch eindeutig die offiziell gepuschte Sprache.
Was noch... C# und VB.NET ist direkter Konkurrent zu Java, besitzt jedoch noch lange nicht den gleichen Marktanteil (meiner Meinung nach jedoch nur eine Frage der Zeit bis sich das ausgleicht)
Mehr findest Du
hier
Hmmm... was vergessen??? Ach ja...
ASP und ASP.NET
Webbasierte Entwicklungsprachen. ASP vergiss mal ganz schnell ... Horror in Bezug auf Strutkurierung ist nur der Vornahme. Sowas von hässlich...
APS.NET hingegen ist durchaus interessant, basiert auf gleich/ähnlichen Konzepten wie C# resp. VB.NET, selbst die Syntax ist die Gleiche.
ASP.NET bietet einfach noch andere Konzepte und Assemblies (=Bibliotheken) die speziell für die Webentwicklung erstellt wurden
Alternative dürfte PHP sein, ist jedoch eher Konkurrent von ASP und nicht zu ASP.NET (zumindest konzeptionell betrachtet)
Delphi
Kann ich nicht viel drüber sagen... hab zwar mal reingeschaut, bin aber
Perl, Java Script, VB-SCript und und und...
Dabei handelt es sich um Scriptsprachen, darauf möchte ich
Und bevor es hier massenhaft Kritik hagelt:
Ich weiss das ist weder vollständig noch ist es ein perfekter Vergleich. Steht jedem frei etwas zu ergänzen und sollte ich mich irgendo täuschen dann auch korrigieren.
Meine persönliche Empfehlung:
Vergiss C, C+, Visual Basic...
Wenn GUI Programmierung ein Thema ist dann C#, anderfalls Java.
Auf jeden Fall solltest Du Dich mit der Objektorientierung auseinander setzen, das ergibt sich jedoch von Alleine.
Bei
Galileocomputing findest Du diverse kostenlose Online Bücher, kannst ja mal reinschnuppern
Gruss
Sperber
P.S.
Hinweis zur Quellenangabe: Fast alle aus Wikipedia