Was sollte ich lieber lernen, Java oder C++?

6 Antworten

C++ ist von den Sprachfeatures und den Konzepten viel umfangreicher, aber für Anfänger auch schwieriger. Java hat eine größere Standardbibliothek und bringt deshalb Anfänger oft schneller ans Ziel.

Trotzdem gibt es Bindings zu Drittbibliotheken meistens auch für C++, aber eigentlich bieten alle großen Projekte auch Java-Wrapper an.

Es kommt immer darauf an, was du machen willst, aber eigentlich sind beide Sprachen mächtig und gut.

An deiner Stelle würde ich ehrlich gesagt beide lernen! Aber nicht gleichzeitig, sondern ein paar Monate versetzt eine nach der anderen. Die Reihenfolge ist eigentlich egal, aber wenn du dich eher für Low-Level-Sachen interessierst, fang mit C++ an, wenn dich hingegen am Anfang "schonen" willst, nimm Java. :)

Viel Spaß und viel Erfolg beim lernen! ;)

PS: Lies dir bitte auch meinen längeren Kommentar auf die Antwort von VBHHerzog durch! Ich glaube, das ist wichtig! :)

C++ ist im Grunde c mit Erweiterungen also ein zwischending von c und c# (das java sehr ähnlich ist)

Ich empfehle dir mit java/c # anzufangen und danach c zu lernen

Denn wenn du c# und c kannst dann ist c++ einfach in 1 Woche dazu zu lernen


TeeTier  20.04.2016, 17:57
Also das stimmt definitiv nicht. :)

Du unterschätzt massiv wie komplex C++ ist!

C, C# und C++ unterscheiden sich gewaltig! Wenn man über die Basics hinaus kommen will, dann muss man sich wesentlich länger als nur eine Woche damit beschäftigen. Das gilt selbst dann, wenn man schon mehrere Jahre mit C# gearbeitet hat.

Allein das Öffnen einer Datei und dazu das allozieren eines Puffers bekommen Anfänger in C aller meistens selbst nach einem halben Jahr nicht sauber hin! Höchstens auf Hello-World-Niveau, aber nicht so, wie man es in einem "richtigen" Programm machen würde. Und das sind nur 2 Operationen!

Wenn jetzt noch fseek() und fread() hinzu kommen, sind wir ganz schnell bei Spaghetti-Code der vor Fehlern und Speicherlecks nur so wimmelt, und in dem Fehlercodes meist ignoriert werden.

Allein um C programmieren zu können, muss man deutlich mehr als Schleifen und Bedingungen beherrschen. Ansonsten entsteht nämlich spätestens nach 150 Zeilen Quelltext ein wirres Chaos.

Und C++ hat gefühlt noch mal eine Million mehr Features ...

Das alles in einer Woche? Niemals! ;)

1
DerMaster1 
Beitragsersteller
 20.04.2016, 16:02

Vielen Dank :)

0

Nein, wenn du C++ beherrschst, kannst du noch lange nicht alles :-)

C++ ist eine eigene Sprache, die sich sogar von normalem C oder C# unterscheidet.

Java zwar auch, allerdings ist Java, wie du sagst, relativ einfach und hinzukommend bauen sehr viele Sprachen auf Java auf, bzw. sind Java sehr ähnlich. Ich kann es zwar nicht, aber meines Wissens nach ist man mit Java nie auf der falschen Seite.


DerMaster1 
Beitragsersteller
 20.04.2016, 16:00

Damit meinte ich eigentlich, dass C++ nicht so einfach ist, und wenn man das schafft zu lernen, kann man ja alles lernen? habe es nur bisschen unpassend formuliert :) Aber danke für deine Antwot :))

0
hghfve  20.04.2016, 16:01
@DerMaster1

Kein Problem! Ich denke nur dass es von der Reihenfolge wohl besser wäre als erstes Java zu lernen und dann C++, da mit Java C++ relativ flott geht. 

0

Auch ich empfehle dir, mit c++ anzufangen. Es ist zwar etwas komplizierter, aber da es dir mehr Kontrolle gibt (ob du willst oder nicht) lernst du dabei die Vorgänge kennen, die bei Java oder C# im Hintergrund ablaufen.

Du hast schon recht: wenn du Dinge wie Speicherverwaltung mal kannst, ist es leicht, sie wieder wegzulassen.

Java ist objektorientiert und streng typisiert, daher meiner Meinung nach gut für den Anfang.


HardwareGuru  20.04.2016, 17:49

Aber Java ist noch stärker objektorientiert

0
TeeTier  20.04.2016, 18:03
@HardwareGuru

Ich nehme an, du beziehst dich auf das Fehlen von Funktionen außerhalb von Klassen?

Wenn du das so siehst, dann ist C++ aber stärker objektorientiert, da es Mehrfachvererbung gibt (nicht nur bei Interfaces) und sowohl Operatoren, also auch Typkonvertierungen und vieles mehr direkt als Member geschrieben werden können, was in Java oft nur mit Kopfständen möglich ist - wenn überhaupt. :)

Naja, egal ... auf jeden Fall stimme ich dir zu, dass man mit Java nichts falsch machen kann. Und zwar nicht nur am Anfang! :)

1
TeeTier  20.04.2016, 17:47

Naja, genau das ist C++ aber auch. :)

1