GULP >> GULP Knowledge Base >> Markt & Trends >> Skills & Qualifikationen >> Unter der Lupe: Java, C++ oder C#

Unter der Lupe: Java, C++ oder C#

Eine Entscheidungshilfe für Ein- und Umsteiger

(April 2003)

Inhalt dieses Artikels:
Die Konkurenten stellen sich vor | Die Marktchancen | Die Stundensätze | Das Fazit

Ihre Meinung zum Artikel
sehr gut
1
2
3
4
5
6
schlecht
Dies ist eine Marktstudie aus dem IT-Projektmarktindex, dem Marktindex für IT-Projekte.
 

Objektorientierte Programmiersprachen sind aus der modernen Softwareentwicklung nicht mehr wegzudenken. Vor etwa drei Jahrzehnten begann ihr Siegeszug mit IBMs Smalltalk, nach und nach kamen weitere hinzu - doch nur einige setzten sich durch. Heute gehören C++ und Java von Sun zu den Wichtigsten. GULP nimmt die Entwicklung dieser beiden Sprachen auf dem IT-Projektmarkt genauer unter die Lupe und wirft auch einen Blick auf den Newcomer C#.

Für IT-Freiberufler stellt sich immer wieder die Frage, welcher dieser beiden Sprachen die besseren Marktchancen eingeräumt werden. Die Auswahl der passenden Programmiersprache ist bei Softwareprojekten keine Frage des persönlichen Geschmacks. Die Entscheidung wird natürlich immer aufgrund des jeweiligen Projektes und dessen Umfeld getroffen. Aber gerade für Neueinsteiger und Umsteiger ist es wichtig zu wissen, auf welches Pferd man setzen sollte und wie dessen Marktchancen stehen.

 

Die Konkurenten stellen sich vor
nach oben
   
In aller Kürze:
o Java:
Durchschnittlicher Anteil an allen Projektanfragen seit 2001: 14,0%.
Durchschnittliche Stundensatz-forderung im März 2003: 68 €.
o C++:
Durchschnittlicher Anteil an allen Projektanfragen seit 2001: 9,4%.
Durchschnittliche Stundensatz-forderung im März 2003: 65 €.
o C#:
Durchschnittlicher Anteil an allen Projektanfragen seit 2001: 0,5%.
Durchschnittliche Stundensatz-forderung im März 2003: 64 €.

Die C-Familie: C, C++ und nun C#, so lautet die chronologische Reihenfolge der C-Familienmitglieder. 1972 wurde die Programmiersprache C entwickelt, Anfang der 80er Jahre entstand dann C++ als objektorientierte Erweiterung von C und wurde schnell die am weitesten verbreitete Programmiersprache. C++ wird auch heute noch immer dann eingesetzt, wenn die Performance der Applikation eine Rolle spielt. Einer der Gründe dafür ist, dass man mit C++ freie Hand hat, was die Nutzung des Speicherplatzes betrifft.

Das neueste Familienmitglied nennt sich C#. Microsoft stellte das Nesthäkchen im Jahr 2000 als erste komponenten-orientierte Sprache für C++-Entwickler vor und soll die besten Eigenschaften aus mehreren Sprachen vereinen. Als die wesentlichen Paten werden Visual Basic, C++ und Java genannt, deren Syntax ähnlich der von C# ist. Als Programmiersprache bietet C# wenig Neues, setzt dafür aber auf bewährte Konzepte und kombiniert diese miteinander.

Java hingegen wurde von Sun Microsystems entwickelt und 1995 als neue objektorientierte Programmiersprache vorgestellt. Dabei ist Java im Grunde auch eine Sprache aus der C-Familie und in weiten Teilen nicht nur mit C++ vergleichbar, sondern sogar identisch. Allerdings wurden bei der Entwicklung von Java einige Sprachbestandteile von C++ anders umgesetzt oder konsequent eliminiert.

So setzt man Java immer dann ein, wenn man auf eine große Bibliothek zurückgreifen möchte. Die Sprache basiert auf einer umfangreichen Klassenbibliothek, durch die von Haus aus eine Menge Basisfunktionalität zur Verfügung steht. Auch in diesem Bereich ist Java C++ klar überlegen - die Standard Library von C++ kann im Vergleich nicht mithalten.

Im Vergleich zu Java oder gar C# hat C++ die längste Vergangenheit. Somit hatten Hersteller schon lange Zeit, standardkonforme und fehlerfreie Produkte herzustellen. Java musste noch bis zu Version 1.3.x mit Kinderkrankheiten kämpfen, die bei C++ längst der Vergangenheit angehören (obwohl es heute z.B. nicht mehr stimmt, dass C++ prinzipiell schneller ist als Java).

 

 

Die Marktchancen
nach oben
   

Java und C++ haben sich mittlerweile bei der Anwendungsentwicklung bewährt, C# muss sich nicht nur aufgrund des zeitlichen Entwicklungs-Rückstandes als echte Alternative erst noch beweisen. Denn seit Smalltalk sind schon etliche objektorientierte Sprachen entstanden - und manche davon sind bald wieder in der Bedeutungslosigkeit verschwunden.

Da alle drei Sprachen irgendwie miteinander verschwägert sind, lohnt ein Blick auf deren Marktanteil im IT-Projektmarkt. Das Ergebnis: Java und C++-Entwickler mussten bezüglich Ihrer Marktchancen in 2000/01 einige Federn lassen. C#, der neue und viel gelobte Sprössling der C-Familie, konnte entgegen dem allgemeinen Branchentrend 2002 auf niedrigem Niveau zulegen.

Projektanfragen zu Java, C++ und C#
Java

C++

C#
Abbildung 1: Projektanfragen zu Java, C++ und C#

Java nimmt unter den OO-Sprachen derzeit immer noch Platz 1 ein: Über 8.000 Projektangebote seit Januar 2001 bescherten Java einen durchschnittlichen Marktanteil von 14 Prozent. Für C++ wurden im gleichen Zeitraum ein Drittel weniger Anfragen verzeichnet. Mit knapp 5.300 Projektangeboten liegt der Marktanteil für C++ bei 9,4 Prozent. Noch sehr viel magerer sieht es derzeit noch für C# aus, das in gerade einmal 400 Projektangeboten als Qualifikation nachgefragt wurde (Marktanteil von 0,5 Prozent).

Jedoch stehen die Aussichten auf ein Projekt für C#-Programmier vergleichsweise gut. Dies geht aus der Gegenüberstellung der Anzahl der IT-Freiberufler mit den über GULP gestellten Projektanfragen zur jeweiligen Qualifikation hervor. Für C# wurden seit 2001 ungefähr 40 Prozent mehr Projektanfragen gestellt, als IT-Freiberufler überhaupt Kenntnisse hierfür erworben haben. Ganz anders die Situation bei der älteren Verwandtschaft: Doppelt soviele Java-Programmierer und drei Mal soviele C++-Entwickler als entsprechende Projektangebote seit 2001.

Progranmmier-
sprache
Freiberufler
mit Kenntnissen in
Projektangebote
(seit 2001)

Ratio:
Markt-
chancen

Anzahl
Anteil
Anzahl
Anteil
Java
15.762
39 %
8.146
14 %
mehr Freiberufler als Projektangebote
C++
14.294
35 %
5.298
9,4 %
mehr Freiberufler als Projektangebote
C#
285
0,7 %
394
0,5 %
gleich viele Projektanfragen wie Freiberufler
Tabelle 1: Anzahl Freiberufler in der GULP Profiledatenbank mit Kenntnissen in der jeweiligen Programmiersprache (Stand: 03/03) und Anzahl Projektangebote seit 2001.
 

 

Die Stundensätze
nach oben
   

Beim Lohnniveau im IT-Projektmarkt ist der Trend zu niedrigeren Stundensatzforderungen klar erkennbar:

Java: In Boom-Zeiten über dem Durchschnittsniveau, liegt Java mit 68 EUR jetzt vier Euro darunter.

Entwicklung des Stundensatzes für Java-Experten
Java
alle bei GULP eingetragenen IT-Freiberufler
 
Durschnitttliche Stundensatz-
forderung von Java-Experten: 68 EUR
(Stand: März 2003).
Abbildung 2: Entwicklung des Stundensatzes für Java-Experten im Vergleich zu den Stundensätzen aller bei GULP eingetragenen hauptberuflichen IT-Freiberufler.

C++: Schon immer "weniger wert" als der Durchschnitt: Das Honorar für C++ sinkt weiter auf 65 EUR.

Entwicklung des Stundensatzes für C++-Experten
C++
alle bei GULP eingetragenen IT-Freiberufler
 
Durschnitttliche Stundensatz-
forderung von C++-Experten: 65 EUR
(Stand: März 2003).
Abbildung 3: Entwicklung des Stundensatzes für C++-Experten im Vergleich zu den Stundensätzen aller bei GULP eingetragenen hauptberuflichen IT-Freiberufler.

C#: Erst seit Ende 2001 messbar: C#-Programmierer verlangen derzeit im Durchschnitt 64 EUR.

Entwicklung des Stundensatzes für C#-Experten

C#
alle bei GULP eingetragenen IT-Freiberufler
 
Durschnitttliche Stundensatz-
forderung von C#-Experten: 64 EUR
(Stand: März 2003).
Abbildung 4: Entwicklung des Stundensatzes für C#-Experten im Vergleich zu den Stundensätzen aller bei GULP eingetragenen hauptberuflichen IT-Freiberufler.
 

 

Das Fazit
nach oben
   

Die Daten untermauern die derzeitige Stellung von Java als Programmiersprache Nummer 1 im IT-Projektmarkt. Aber nicht nur bei den Projektanfragen verweist Java den ehemaligen Spitzenreiter C++ auf den zweiten Platz, sondern hat auch bei den Stundensätzen die Nase vorne. Zwar sind auch hier die Stundensätze gefallen, Java ist aber nach wie vor ein lukratives Betätigungsfeld für programmierende IT-Freiberufler.

Durch die Ähnlichkeit zu Java und C++ ist auch C# für Umsteiger schnell zu erlernen. Java- oder C++ Entwickler haben aber zur Zeit keinen wirklichen Grund, um auf den .NET-Zug aufzuspringen - ist doch der große Vorteil von Java und C++ die Plattformunabhängigkeit - doch diese steckt bei C# noch in den Kinderschuhen. Es ist die Kombination mit .NET, durch die C# einen zusätzlichen Mehrwert bietet: In C# geschriebene Programmteile können in anderen Sprachen (sofern sie auf .NET basieren) eingebunden werden.

Für C# kann dies den entscheidenden Vorteil bedeuten, um Java und C++ Marktanteile abzujagen.

 

 

Die Stichprobe
nach oben
   

Die vorliegende Marktstudie beruht auf der statistischen Auswertung der GULP Dienste zur Vermittlung von IT-Freiberuflern. Die Entwicklung der Projektanfragen beruht auf der statistischen Auswertung von 52.559 Projektangeboten, die IT-Freiberuflern seit Januar 2001 über den GULP-Server zugestellt wurden.

 

 

Kommentare zu diesem Artikel:

"Leider ist der Artikel zu sehr veraltet um richtige Entscheidungen treffen zu könnnen. Der Marktanteil von C# hat in der letzten Jahren deutlich zugenommen und reicht mittlerweile an C++ heran. Unumstritten ist Java weiterhin in der Führungsposition jedoch sind die Entwicklungssprachen Projektabhängig und somit fehlen hier korrekte Daten! (Juli 2009)"

"Super und sehr interessant. (November 2007)"

"Ich votiere stark für die .NET Plattform. Ich habe bisher an Java, C++ und C# Projekten gearbeitet. Ich muss sagen was Interportabilität zwischen Programmiersprachen und Produktivität angeht ist .NET einfach unschlagbar. Egal was man von MS halten mag aber .NET ist ein wirklich feines Stück Technik. Man sollte verdammt vorsichtig sein wenn man diese Plattform einfach ignoriert. Um mal den Entwickler von SharpDevelop aus einem Interview zu zitieren: 2) Why did you choose the .net platform? I think that virtual machines are the future and .NET is currently one of the best designed virtual machines. In my opinion compiled code is nearly dead, VMs allow it to develop for one platform and to run the programm under almost any hardware/operating system available (at least theoretically, but that's enough for a computer scientist). 3) What are the advantages in C# for you as a developer? Key advantage : Faster, better and more expressive than java. More modern than C++ but only with low performance penalty. 4) What features of C# made you choose it as a language for such a substantial project? * Properties I like the concept of properties, it is far nicer than the get and set methods known from java. and C# has a lot of syntax sugar ... delegates for example. (far better than C method pointers) * Java/C++ like syntax If you know Java/C++ you'll learn C# fairly easy ... same bracketing, some features from Java, some from C++ (and some from delphi :)). * Good and fast compiler It is difficult to find a fast C++ compiler, the standard java compiler (javac) is slow too. The C# compiler is much faster. Drastisch ausgedrückt aber so ist es nun mal ;) (März 2005)"

"Von diesen dreien gefällt mir persönlich Java am besten. Aber es lohnt sich auch ein Blick auf weniger populäre Sprachen wie Objective-C und Smalltalk (was NICHT von IBM ist). (Februar 2005)"

"Ich finde es gut, dass es konkurrierende Programmiersprachen gibt. So werden die sich der "Vollkommenheit" nähern. IBM/Sun versucht mit aller Macht MS-Monopol zu verhindern, indem Java mit viel Geld unterstützt wird (free IDEs, und und...). MS dagegen setzt auf C++/C#. Im Prinzip können die Sprachen Java und C++ nichts dafür - Mittel zum Zweck ;-) (Januar 2005)"

"Ursprünglich auf IBM's S/38 (-> AS/400 -> iSeries) Plattform zu Hause, habe ich mein Wissen vor Jahren um PowerBuilder erweitert, dann Webentwicklung mit ASP und PHP, mit dem Ziel, baldmöglichst auf Java und JSP umzusteigen: seit Jahren besuchte ich immer wieder mal ein Seminar, las Bücher, besuchte Kurse. Grund meiner Präferenz für Java waren Offenheit, Verbreitung, Plattformunabhängigkeit und was sonst noch genannt wird. Projekte als (Java-) "Anfänger" zu erhalten, um auch die entsprechende Erfahrung aufzubauen, war aber schwierig. Vor ein paar Monaten dann die Anfrage, in einem C#-Projekt mitzuarbeiten... der Umstieg von Java fiel relativ leicht, da sich die Sprachen ähnlich sind. Obwohl eher kritisch gegenüber Microsoft, muss ich zugeben, dass das Arbeiten mit Visual Studio.Net 2003 (Enterprise Architect) komfortabel ist, im Internet sehr viele kostenlose Ressourcen zur Verfügung stehen (Artikel, Know-how, usw.) und ich auch den Eindruck habe, dass verschiedene Sachen im Vergleich zu Java/Eclipse (interessant und leistungsfähig) eine Spur leichter zu bewerkstelligen sind. C# ist zu meiner Hauptprogrammiersprache geworden, dennoch werde ich mich in meiner Freizeit weiterhin mit Java beschäftigen und dann wohl auch endlich die Sun-Zertifizierung angehen. Im Webbereich bleibt aber PHP mein Favorit, ASP.Net ist da keine Alternative. (November 2004)"

"Gut, dass auch ich mich richtig entschieden habe! Ein update wäre der Marktdaten wäre abr angebracht! (April 2004)"

"Ich glaube, die jenigen die meinen nach dieser Lektüre sich richtig entschieden zu haben (nämlich Java), die sollten nach 2jahren mal wieder mal erkundigen! Es ist noch früh für C# oder J# oder VB# oder C++#. Es ist nicht die Sprache die wichtig ist. O.K (Februar 2004)"

"Wäre nett, wenn so ein informativer Artikel regelmäßig aktualisiert würde (zumindest bzgl. der Marktdaten). .Net ist nett und fein, aber welcher ehrliche Programmierer will sich dem Mammon noch tiefer beugen? (Februar 2004)"

"guter artikel der mir aber nicht weit genuk in die zukunft schaut und höchstens eine ahnung geben kann wie es in den nächsten drei jahren aussehen wird (September 2003)"

"Genialer Artikel - allerdings kann er auch keine Antwort geben wer das Rennen machen wird. Ich persönlich tendiere zu C# weil die Marktmacht von Microsoft einfach zu gewaltig ist. Nochmals Glückwunsch an den Autor - super super Artikel (August 2003)"

"C# ist ein aufgewärmtes Java ohne massig 3. Party und Open-Source Tools , ohne wirkliche alternative zu J2EE und ohne Dinge, wie den JCP. Das alles macht Java die investitionssichere Sprache und günstiger obendrein. (August 2003)"

"Ein sehr interessanter Artikel. Java scheint immer noch die richtige Wahl. (August 2003)"

"Die Geschäftlogik ist der entscheidende Punkt. Wir entwickeln seit Jahren in C++ (MFC) unter Windows und steigen jetzt massiv auf Java unter Linux um. C# und .Net ist eine interessante Technologie, aber das kann Java auch und es ist heute schon plattformunabhänig. Die Entwicklungskosten sind das entscheidende - und vor allem wie schnell kann etwas umgesetzt werden. Eine Mischung verschiedener Technolgien, je nach Einsatgebiet, ist sinnvoll. Bunte Client-Applikationen sind nur für die Marketing-Abteilung wichtig. Usability und Background-Prozesse haben Zukunft. Wir wollen schließlich Personal sparen. (Mai 2003)"

"Wir machen mit einem C#-Programmierer die schönsten Client-Applikationen und mit 5 Programmierern die langweiligen Java-Applikationen. .NET wird auch bald auf LINUX laufen. Noch wollen viele IT-Abteilungen kein .NET und wenige nur genau das. Schöne Benutzeroberflächen setzen sich durch! (Mai 2003)"

"Seit drei Monaten stelle ich mir genau diese Frage: Java oder C#? Ich habe mich für Java entschieden. Nach diesem Artikel habe ich ein gutes Gefühl. (Mai 2003)"

"Nun dieser Artikel bestätigt meine Weg, mich in Java weiterzubilden, aber ein Auge auf C# zu haben. (Mai 2003)"

"Wer glaubt, Plattformunabhängigkeit und Microsoft's C# ständen diametral zueinander, irrt! Ausgiebige Projekterfahrungen zeugen davon. Die Interoperabilität zwischen .NET/CLR Produkten untereinander ist ungeschlagen - Java macht da eher Probleme, und externe Projekte lassen sich ebenfalls sehr leicht einbinden, egal welcher Welt sie entspringen. Statistik ist eben nur Statistik, die Zukunft gehört allen Konzepten, wobei C# ganz klar auf allen Plattformen neben C++ stehen wird. Erste Studien zeigten früh, was C# gegenüber Java Projekten und Betriebsumgebungen zu unserem ganz klaren Favoriten werden lässt. TCO, von der Entwicklung bis zur Skalierung der Hardwareumgebung. (Mai 2003)"

"Ich denke das C# in den nächsten 2-3 Jahren an Marktanteilen gewinnt, aber nicht an Java herankommt. Dazu gibt es noch zuviel Nachteile und noch einige Bugs, die erst ausgemerzt werden müssten. (April 2003)"

"Artikel ist sehr informativ und kompetent.Ich hoffe, daß C++ doch nicht unterschätzt wird: ohne Zeiger wird schnell vergessen, daß jeder Rechner mit 0/1 funktioniert und daß jedes Programm sauber und optimal geschrieben sein kann :) (April 2003)"


Seite drucken Seiten drucken
Zum Seitenanfang nach oben

 
Für die Teilnahme an den mit diesem Icon gekennzeichneten Diensten melden Sie sich mit den Zugangsdaten an.
Zugangsdaten vergessen? | Noch kein GULP Profil?
Über GULP: Mehr als 3.000 Kunden, 75.000 eingetragene IT-Experten, davon 10.500 mit Schwerpunkt Engineering, und über 1.000.000 abgewickelte Projektanfragen: GULP ist die wichtigste Quelle für die Besetzung von IT-/Engineering-Projekten mit externen Spezialisten im deutschsprachigen Raum. Zusätzlich zu den Dienstleistungen einer modernen Personalagentur bietet GULP ein umfassendes Online-Portal mit Informationen und Services für die Teilnehmer im Markt.