# Umstieg von C++ auf Java?



## steffen1997 (22. Sep 2011)

Also,meine Frage ist ich habe Grundkenntisse in C++, ich möchte auf Java umsteigen wie schwierg wird das und wo sind die Unterschiede zwischen C++ und Java ausserdem gibt es für die Spieleprogrammierung(ich benutze Unity und daran bin ich hauptsächtlich interessiert) einfache 3D Engines so wie Unity oder sollte ich lieber bei Unity3D mit Javascript bleiben(bin von Ogre auf Unity umgesteigen,weil installation und Programmierung war mir ohne halbwegs anständigen mitgelieferten Leveleditor zu aufwändig)und noch eine Frage gibt es zu Java gute Bücher.Meine letzte Frage ist kann ich Java lernen und trotzdem mit Unity weiterarbeiten(wegen durcheinander kommmen)?
Ich hoffe jemand kann mir bei dieser Entscheidung helfen.

Mfg steffen1997


----------



## Marcinek (22. Sep 2011)

In deinem Text gibt es mehr Sätze als Satzzeichen. ;D

Also zu allen Fragen gibt es hier bereits Threads. 

Bücher, Unterschiede und die Einbindung von NAtiven Code in Java.

Du kannst nicht, wie in .NET C++ und Java einfach mischen.

Gruß,

Martin


----------



## steffen1997 (22. Sep 2011)

ich meine damit ob es nicht probleme geben würde wenn ich 2 Programmiersprachen benutze natürlich in verschiedenen Bereichen?


----------



## guest565 (22. Sep 2011)

Um bei der Genauigkeit dieser Frage zu bleiben: das kommt ganz auf dich an

Manche sind schon mit einer Sprache heillos überfordert, für andere ist es ganz normal in mehreren Sprachen zuhause zu sein.

Wobei das bei dir ganz danach aussiehst, dass du dich etwas übernimmst. Du hast gerade mal "Grundkenntisse in C++", willst jetzt noch Java lernen, aber willst ein Spiel mit 3D-Grafik machen? Das passt doch vorne und hinten nicht zusammen.

Lerne dir erstmal eine solide Programmiertechnik an und dann kannst du weiterschauen.


----------



## 0x7F800000 (23. Sep 2011)

Klingt alles irgendwie sehr verwirrt... Ist 1997 das Geburtsjahr? Könntest du evtl. etwas genauer beschreiben, was du willst oder vorhast? C++ und Java haben teilweise recht unterschiedliche Einsatzbereiche, und sind beide keine Spiele-Engines. Wenn du unbedingt etwas seriöseres mit Spieleprogrammierung machen willst, solltest du wohl erstmal bei C++ bleiben.

Kurz zu Fragen:

Unterschiede: Java ist erheblich schonender für den Programmierer, und erlaubt es nicht, sich zu oft in den Fuß zu schießen, im Unterschied zum allzu ehrlichen C++. Java an sich ist im gewissen sinne etwas "höher" (zB wenn man generics zu templates vergleicht), was man mehr mag ist Geschmackssache. Auf dem Gebiet der Spiele und der wissenschaftlichen Berechnungen ist C++ etwas etablierter.

Bücher gibt's für java zuhauf, online & kostenlos. Google "java insel openbook", siehe FAQ

*Irgendwelche* Engines gibt es immer für alles (vielleicht nicht für Prolog), aber diese sind bei Java nicht so populär, einfach weil Java ganz wo anders verwendet wird, nämlich bei monströsen serverseitigen Anwendungen.

Was mehrere Sprachen zur selben Zeit angeht: kommt darauf an, wie viele Sprachen du schon geschluckt hast. Wenn C++ deine erste ist, dann lern erstmal C++ halbwegs ordentlich, und danach lerne noch einen haufen Sprachen: jedes jahr eine oder so. Wenn du C++ gelernt hast, wirst du auch besser verstehen, wofür man Java schätzt, auch wenn du dich anfangs so fühlen wirst, als könntest du damit nicht mal bis Zehn zählen. Das merkwürdige Gefühl der amputierten Hände beschleicht einen stets, wenn man mit einer neuen Sprache konfrontiert wird, und an etwas anderes gewohnt ist, das legt sich aber, desto schneller, umso mehr man lernt.


----------



## steffen1997 (23. Sep 2011)

ich benutze ja unity für spiele ich wollte eigentlich auch wissen wofür java hauptsächtlich benutzt wird(im Gegensatz zu C++) und ob es auch komfortable und einfache 3d-engines wie Unity gibt.


----------



## timbeau (23. Sep 2011)

ICh würde anders an sowas rangehen. Schau, was dich interessiert/was du vorhast und dann überlegst du opb du dafür neue Sprachen brauchst. Jetzt auf alle Möglichkeiten von Java einzugehen ist doch recht sinnlos. Für Spiele gibts auch fertige Engines mit eigenen Sprachen.


----------



## steffen1997 (23. Sep 2011)

ich bin vorallem an spielen interressiert da nehme ich Uniy mit javascript(ich weiss dass das noch  nicht mal annähernd wie Java ist)ich bin aber auch an Grafikprogrammierung interessiert und bin ziemlich faul wenn ich Code schreibe,deswegen benutze ich für spiele uniy.Es geht mir vor allem um konsolenprogrmmierung und Grafikproggrammierung,deswegen die Frage c++ oder java.


----------



## AlexSpritze (23. Sep 2011)

steffen1997 hat gesagt.:


> Es geht mir vor allem um konsolenprogrmmierung und Grafikproggrammierung,deswegen die Frage c++ oder java.



Beides eignet sich für die Konsolenprogrammierung und für die Grafikprogrammierung. Wenn du schon Erfahrung in C++ hast, dann versuche deine Kenntnisse auszubauen, indem du bei C++ bleibst.


----------



## Empire Phoenix (24. Sep 2011)

Lern erstmal algorithmik und Objectorientierung und Pattern, die logik davon kann man in allen Objet sprachen verwenden, dass nimmt sich nicht viel. Die sprache ist relativ egal vonnner Performance her das nimmt sich auch nicht nennenswert was bei java und c++.
Für Java wäre als 3d engine zb. jMonkeyEngine.org | Home da, 
Wesentlicher unterschied zu unity du musst mehr kenntnisse von 3d rendering haben, weil die engine weniger abnimmt, dafür haste keine begrenzungen vom was möglich ist, da voller sourcecode zugriff.


----------

