# Java 6 oder 7?



## Defkil (12. Jul 2012)

Hey
da ich und ein Freund ein kleines Spiel erstellen wollen, haben wir uns für Java entschieden (Perl hat verloren  ) Nun, habe ich bemerkt das ich und auch in der Bibliothek nur Java 6 Bücher sind und 7 ja schon da ist. Lohnt es sich jetzt noch Java 6 zu lernen? Oder gleich an die 7? Oder kann ich überhaupt mit der Java 7 auch Java 6 Anwendungen nutzen??
Danke im vorraus!!


----------



## Gast2 (12. Jul 2012)

Java ist abwärtskompatibel. Du kannst Projekte die mit Java6 erstellt wurden auch mit Java7 ausführen.

Zwischen Java6 und Java7 gibts außerdem gar nicht soo viele Neuerungen. Grad Anfänger sollten davon eigentlich recht wenig mitbekommen. Du könntest also Problemlos mit Java7 entwickeln und dabei nen Buch für Java6 zur Hand nehmen.


----------



## age (13. Jul 2012)

[OT]
Nur nebenbei, als Anfänger gleich ein Spiel programmieren zu wollen ist etwas unrealistisch.
[/OT]


----------



## Defkil (13. Jul 2012)

Das ist mein Ziel, natürlich ist mein erstes Programm nicht gleich ein Spiel


----------



## J7Dev (13. Jul 2012)

Ich schließe mich der Meinung von age an : als Anfänger ein Spiel ? Wie das endet kennt man hier zu genüge : man kommt nicht weiter weil man das Wissen nicht hat -> Frust -> kein Bock -> Projekt wird fallen gelassen -> man interessiert sich nicht mehr fürs Programmieren weil man schlechte Erfahrungen gemacht hat. So in etwas läuft das bei jedem 3 Anfänger ab der nur Programmieren lernen will weil er sein eigenens Spiel entwickeln will. Das ist aber nicht nur in Java so sondern in allen anderen Sprachen.
Wenn man also an sich vom Programmieren noch keine Ahnung hat (also vorher auch noch nie in einer anderen Sprache etwas gemacht hat) ist "Ich will ein Spiel programmieren" der wohl schlechteste Einstieg in die Welt des Programmierens an sich. Auch wenn Java eine recht "komfortable" Sprache ist (das Wort "einfach" möchte ich vermeiden) sollte man trotzdem erstmal Basics lernen. Wie in jeder anderen Sprache auch. Und leider trifft dieser "Lebenslauf" meist jüngere Personen die von 0 auf 100 sofort Erfolg haben wollen als jene die sich mit etwas ähnlichem schon mal aus ein ander gesetzt haben (was an dieser Stelle KEINE Wertung deiner Person sein soll !).

Aber genug OT ... back to topic :

Ob nun Java7 oder Java6 ... es ist aktuelle (schon seit ich glaube einem Jahr) immer wieder der Streitpunkt unter Java-Entwicklern. Auch gab es diese Diskusion hier schön öfter (GooGLe , SuFu) mit meist immer wieder dem selben Ergebnis :

"Braucht man unbedingt Java7 oder gehts auch mit Java6 ?"
und
"Ist Java7 beim "Kunden" möglich ?"

Natürlich ist es richtig das Oracle Java7 mitlerweile "freigegeben" hat, das heißt aber noch lange nicht das es auch jeder hat oder das es mitlerweile für wirklich ALLE Systeme verfügbar ist. Gerade bei "Firmenkunden" ist diese Frage sehr wichtig : welche Version wird überhaupt unterstützt und welche Pläne haben die zuständigen Admins wegen Upgrades ? Oder auch bei "embedded" ist sowas häufig ne Frage : man kann nicht einfach auf ein mit unter Jahre altes Produkt mal eben ne neue Firmware mit aktueller Version draufspielen wenn z.B. die Hardware es nicht hergibt (CPU, ROM, etc).

Und das sind so die Punkte die bisher immer kamen und auch immer kommen werden. Und zwar nicht nur in Bezug auf Java6 <-> Java7 sondern auch zwischen anderen Versionen.

Allgemein solltest du dir folgende Fragen stellen :

Ist Java7 unbedingt nötig ? (Eigentlich nicht wirklich, der größte Unterschied zwischen Java6 und Java7 ist eigentlich nur die NIO.2 File-API und der Fakt das Java7 "komplett" offen sein soll.)

Wie sieht es mit der Verfügbarkeit von Java7 für die Zielplattform aus ? (Sicher, ein großteil eurer "Kunden" werden Windows-User sein. Aber denkt auch an die die kein Windows haben. Z.B. MAC : wer noch einen MAC mit PowerPC-CPU hat kann max Java5.0 verwenden da Java6 for MAC erst mit einem ix86-CPU möglich ist.)

Gibt es gewisse Abhängigkeiten von verwendeten Libs gegenüber einer gewissen Java-Version ? (Ich meine mich erinnern zu können das mal jemand Probleme mit Java6 hatte weil eine der Libs die er verwendet hat unbedingt Java5.0 wollte und sich nicht zur Zusammenarbeit auf Java6 überreden lies (was denke ich mal am Programmierer der Lib lag da dieser vermutlich ein weiteres Major-Update so nicht bedacht hat).)

Du siehst : die Frage "Java7 oder Java6" ist durchaus berechtigt, wirft aber bei der Diskusion selbst weitere Fragen auf welche nach Beantwortung die Haupt-Frage ganz klar klären.
Verwende einfach mal GooGLe und die SuFu um weitere Themen dieser Art zu finden. Ich bin sicher das du am Ende zu dem Schluss kommen wirst das wenn überhaupt Java6 auch völlig ausreicht.

Zum Rest : natürlich kannst du mit Java7 auch älteren Code ausführen, ABER mit einer älteren Version KEINEN Java7 Code. Dieses Problem führt leider immer wieder zu Threads bei denen sich herrausstellt das Anfänger mit einer IDE mit Java7 compiled haben (WARUM lässt man eigentlich immer wieder Anfänger auf ne IDE los ? Man sollte lieber mit Editor und Console seine ersten Schritte machen !) und es dann mit Java6 ausführen wollten weil beides gleichzeitig installiert war, aber Java6 fürs gesamte System und Java7 NUR für die IDE genutzt wurde.
Und wie oben erwähnt : da die Unterschiede zwischen Java6 und Java7 eher gering sind kannst du auch mit einem Java6 Buch lernen.

Eigentlich würde sogar ein Java5.0 Buch reichen da das was sich zwischen Java5.0 und Java6 geändert hat für einen Anfänger eh noch sehr uninteressant ist und man sich später erst damit beschäfigt. Laut Sun waren das grade mal JDBC4.0, Script-Engine, n bisschen neuer Kram in AWT und Swing, Monitoring und ein paar Neurungen für JavaEE. Grundlagenmäßig gab es aber seit Java5.0 mit den Generics bis jetzt eigentlich keien große Neuerungen.


----------



## Empire Phoenix (14. Jul 2012)

Spiele programmieren ist an und für sich garnicht so schlecht finde ich. Habe damit vor 5 Jahren auch angefangen, und bin immer noch dabei (und auch noch immer bei dem ersten Spiel, man sollte nie unterschätzen was einen für ein Aufwand erwartet! vom ersten damals geplanten Milestone habe ich so ca. 60% inzwischen). 

Man muss "lediglich" die Fähigkeit haben sich an Sachen festzubeißen, und evtl. einen guten Teils seines Lebens damit zu verbringen in seiner Freizeit. Spiele programmieren ist vom Zeitaufwand her wahrscheinlich das extremste hobby das man sich vorstellen kann.


----------



## J7Dev (14. Jul 2012)

Und mal wieder am Thema vorbei.
Es geht hier NICHT darum das TO als Java-Einsteiger ein Spiel in Java schreiben will sondern konkret um die Frag "Java6 vs Java7".

Und ganz erlich : wenn man nicht mal die Grundlagen einer Programmiersprache kennt sollte man von dem Wunsch ein "Spiel" zu programmieren ablassen, da dies definitiv KEIN Einstieg in eine "Sprache" ist.

Bitte das Thema LESEN und vor allem VERSTEHEN bevor man postet. Aber das scheint ja mit über 1k posts egal zu sein wenn man zeigen kann : ich hab hier schon viel gepostet ... aber eigentlich immer noch keinen Plan hat und unfähig ist Probleme richtig zu erfassen.

Das sollte man eigentlich i. Mathe 3. Klasse bei Sachaufgaben lernen ... was leider einige "Programmierer" bis heute nicht können.

Ganz erlich : wenn man keine Ahnung einfach mal die FRESSE halten ...

gott ihr kiddies ey ... und dann fragt man sich als fast 10 jahre java progger warum immer wieder die selben noob fragen mit immer wieder den selben falschen und sinnlosen antworten kommen ...

dann postet doch einfach nich wenn ihr es nich auf die reihe bekommt das problem zu erfassen ........


----------



## Empire Phoenix (14. Jul 2012)

Jaja hauptsache anonym flamen. (Ars***och)
Manchmal entwicklen sich Themen eben.


----------



## bygones (14. Jul 2012)

Empire Phoenix hat gesagt.:


> Jaja hauptsache anonym flamen. (Ars***och)
> Manchmal entwicklen sich Themen eben.


irgendjemand oder wie er nun heisst ist halt wieder mal hier.... hurray - ignorieren


----------



## bronks (14. Jul 2012)

Defkil hat gesagt.:


> ... Java ... Java 6 ... Java 6 ... Java 7 ... Java 6 ...


Hast Du Dir schon mal .NET angesehen?

Sachlichkeit, Freundlichkeit und Hilfsbereitschaft wird in .NET-Foren überwiegend ganz anders verstanden, als in der JavaWelt.


----------



## bERt0r (14. Jul 2012)

Hey mein erstes Programm war auch ein Spiel: P ein Textadventure. Kommt eben immer drauf an welches Spiel man machen will, wenns was einfaches is gelingt es auch als Anfänger.


----------

