Frage von GluecklicheHuhn, 72

Java oder C++/C?

Ich weiß nicht mit was ich nun weiter machen soll. Mit Java oder C++/C ? Also Ruby kann ich aber damit bin ich nicht zufrieden. Und bei Java muss ich sagen fühle ich mich einfach nicht so gut. Ich meine irgendwie gibt es ja Leute die sagen dass die Sprache nicht die beste ist selbst wenn sie auf Platz 1 ist. Trotzdem find ich die Syntax von Java wiederum recht angenehm. Und bei C. Naja... Die Syntax wirkt mir sehr komisch. Und allgemein ist sie auf jeden fall nicht leicht. Aber sie ist schneller.

Für was soll ich mich entscheiden ? Für was habt ihr euch entschieden ?

(Funfact: Meine erste Sprache war Java. Ich dachte wohl da kann ich jetzt alles machen und so, aber weit gefehlt :'D also nahm ich mir Ruby und kann es nun.)

Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von TeeTier, Community-Experte für programmieren, 29

Bleib einfach weiter dran, und mach sowohl Ruby, als auch Java weiter! Lerne zusätzlich noch C++.

Du wirst keine Programmiersprache finden, mit der du rundum zufrieden bist, und mit der du alles machen kannst.

Eine eierlegende Wollmilchsau wird es auf dem Gebiet nicht geben können.

Du musst immer abwägen und Kompromisse eingehen! Wähle dein Werkzeug, also die Programmiersprache, anhand deiner Anforderungen und deines Projektes. Nicht anders herum!

Die Antwort auf deine Frage lautet also ganz eindeutig: Lerne alle! Java, Ruby und C++. Kannst du eine davon nicht, wird dir früher oder später etwas fehlen!

Bei deinen Vorkenntnissen dürftest du keine größeren Probleme haben.

Viel Erfolg! :)

PS: Für 2D-Spiele eignet sich die SDL. Dafür gibt es sogar Bindings in Python und anderen!

PPS: Das "#include" mag altmodisch und Schwerfällig wirken, hilft aber bei C++-Templates ungemein weiter. Lass dich einfach auf neue Konzepte ein! Du bist jetzt von Java vor-beeinflusst und auf Java fixiert. In C++ programmiert man aber wie in C++ und nicht wie in Java! Sei einfach offen! :)

Antwort
von kordely, 11

Kannst du sagen, was dir fehlt? Oder kannst du das nicht in Worte fassen?

Ich rate dir den Sprachen nachlesen, und einige ausprobieren. Vielleicht wird dir C oder C++ gut. Oder Ada, Python, Lua, Common Lisp. Oder ... Ich empfehle dir C# nicht, da es ein anderes Java ist.


Antwort
von Gomze, 8

Ich empfehle Java. Java ist die meist genutzte Programmiersprache der Welt. Und was du in C machen kannst, kannst du auch in Java machen!

Auch wenn es manchen total unmöglich verkommt, du kannst in Java ein 3D Spiel programmieren mit einer Bomben Grafik

Antwort
von SomeNoOne, 44

"Kannst du C, kannst du alles."

Ich weiß nicht, was dein Ziel ist, aber falls du Programmieren lernen möchtest, empfehle ich dir C / C++.

Kommentar von Fishmeaker ,

"Kannst du C, kannst du alles." - Diesen Satz höre ich so oft und es ist und bleibt Blödsinn.

Kommentar von SomeNoOne ,

Warum denn?

Kommentar von GluecklicheHuhn ,

Ich nehm' jetzt Java denn wenn ich mich wieder an dieses grausame "#include" errinere... Ich hasse dass, das sieht so schwer und altmodisch aus irgendwie.

Kommentar von MalNachgedacht ,

Weil es Programmiersprachen gibt die rein gar nichts mit C zu tun haben und bei denen C-Kenntnisse rein gar nichts nützen.

Prolog wäre z.B. eine solche Sprache

Kommentar von TeeTier ,

Scheme, Lisp, Erlang, und und und ... :)

Kommentar von Fishmeaker ,

Weil bei Weitem nicht alle Sprachen C-Orientiert sind.

Wenn du die Grundlagen der Programmierung, sei es prozedurale, objektorientere oder eine nach einem völlig anderen Verfahren,verstanden hast wird dir das definitiv immer weiterhelfen.

Dadurch bist du in der Lage auch eine andere Syntax zu lernen. Aber die C-Syntax an sich hilft dir nur bei C-Orienterter Syntax wirklich weiter.

Kommentar von GluecklicheHuhn ,

Programmieren kann ich aber die Programmiersprache die ich nutze da sind mir zu wenig möglichkeiten. Also möchte ich eine andere nehmen aber ich kann mich nicht zwischen den beiden entscheiden.

Kommentar von G0lD3Nc0Ld ,

Es ist kein Blödsinn! Genau da lernt man erst, was die Logik hinter dem Zusammenhängen von Strings etc. In anderen Programmiersprachen gibt es schon vorprogrammierte Funktionen, die jeder nutzt

Kommentar von MalNachgedacht ,

In C lernt man vielleicht notgedrungen eine (relativ gebräuchliche) Variante simple ASCII-Strings zu implementieren - das nützt oder interessiert einen SmallTalk oder Lisp-Programmierer nicht die Bohne

C ist sicherlich ganz gut wenn man auf relativ niedriger Ebene verstehen will wie ein typischer Prozessor Code abarbeitet ohne das man sich auf Assemblerebene hinab begibt.

Das mag für bestimmte Bereiche auch nützliches Wissen sein - aber es gibt reichlich Programmiersprachen wo dieses Wissen nutzlos ist.

Wer "nur" C kann tut sich manchmal schon schwer mit den objektorientierten Konzepten von C++  - je länger jemand nur mit C oder ähnlichen Sprachen programmiert hat umso schwerer fällt meist das Verständnis anderer Paradigmen weil das Gehirn nur noch in Bytes und Pointern "denkt"

Antwort
von Fishmeaker, 39

Das kommt ganz darauf an, was du programmieren willst.
Pauschal kann man dir da keine gute Anwort geben.

Kommentar von GluecklicheHuhn ,

2D Spiele mit Java allerdings ist Java ja nicht so schnell im Gegensatz zu C aber die Syntax wiederum schwerer.

Kommentar von Fishmeaker ,

Naja, "schwerer" ist so ein allgemeiner Begriff. Ich halte C++ keineswegs für schwerer als Java.

Sie unterschieden sich in gewissen Dingen durchaus aber das macht keine wirklich schwerer oder leichter als die andere.

Der Punkt Geschwindigkeit mag im Allgemeinen zutreffen, ja.
Wenn du allerdings "nur" auf 2D-Spiele aus bist wirst du da kaum etwas merken. Dieser Punkt sollte nicht der Entscheidene sein.

Meine Wahl für dich, nachdem ich das gelesen habe, nennt sich Java.

Der Grund liegt auf der Hand: Du hast dort etwas Vorerfahrung und fühlst dich wohler.

Aber dabei soll es am besten nicht bleiben. Es gibt nicht DIE Programmiersprache, deshalb gibt es ja so viele. Je mehr du lernst desto besser wirst du, also bleibe auch an Ruby dran, denn auch dort wirst du nicht alles können und im Optimalfall steigst du auch irgendwann in C ein.

Versuche auch in Java soweit in die Tiefe zu gehen wie möglich. Denn dieses Wissen, die Logik in tiefster Ebene, diese wird dir auch bei jeder weiteren Sprache helfen.

Es bringt überhaupt nichts viele Sprachen flach zu lernen. Lerne lieber eine in die Tiefe. Das Wissen lässt sich dann beim Erlernen neuer Sprachen immer in irgendeiner Form anwenden.

In diesem Sinne frohes Schaffen!

Keine passende Antwort gefunden?

Fragen Sie die Community