Gegenfrage: Warum sollte es? Es gibt Engines & Unterstützung im Tooling & Bibliotheken für Unity & Co - aber nicht für Java. Warum soll also jemand ein Spiel in Java entwickeln, wenn es in anderen Sprachen deutlich einfacher geht, weil da mehr Infrastruktur da ist.Wieso wird Java kaum für die Spieleentwicklung genutzt? Die Performance der Rechner nimmt stetig zu und C# bietet doch auch gute Engines.
Die Möglichkeit gibt es - so wie es zu fast allem die entsprechende Möglichkeit auch mit Java gibt.Wieso wird Java kaum für die Spieleentwicklung genutzt? Die Performance der Rechner nimmt stetig zu und C# bietet doch auch gute Engines.
WeilWahrscheinlich verstehe ich deine Antwort nicht so recht aber wieso wurde nie eine so tolle Engine wie Unity in Java geschrieben?
Was ist da der große Unterschied?
Heyy, dankeschön erstmal für deine Antwort. Aber wie genau verknüpfe ich den Code von Java denn nun mit der Grafik? Haben die anderen Services Java als Sprache oder muss ich den Code irgendwie mit einer Grafik verknüpfen durch hochladen?Java ist in mehreren Bereichen stark im Einsatz:
- Backend hast Du erwähnt. Dazu gehört dann sowohl JEE als auch Frameworks wie Spring. Üblich sind da dann Web-Services (Alt nach SOAP, aktuell aber mehr REST). Aber da gibt es viele Schnittstellen, die genutzt werden können (Messaging und was sonnst noch so alles verfügbar ist)
- Mobile - Entwicklung für Android war lange in Java. Kotlin kommt da zwar immer stärker, aber Java ist da weiterhin verfügbar. (Gibt aber auch noch weitere Ansätze, z.B. mit Gluon um mit JavaFX auf Androis/iOS Geräte zu kommen.
- Frontend - Hier gibt es mehrere Ansätze. Swing/JavaFX/SWT sind Technologien für Desktop Applikationen, die wenig verbreitet sind, aber natürlich immer noch verfügbar sind. Aber es gibt genug Ansätze, Java auch bis in den Browser-Bereich zu bringen (Vaadin z.B. erlaubt reine Java Applikationen bis in den Browser, incl. progressive web app (PWA). Aber auch Webassembly kann man mit Java erstellen. Und dann noch spezielle Lösungen um z.B. ein JavaFX Programm ins Web zu bringen...
Somit kann Java eigentlich alle Bereiche durchaus abdecken.
In der Praxis findet man bei vielen Projekten aber Java vor allem im Backend mit JEE oder einem Framework wie Spring, Quarkus, was auch immer.
Es gibt verschiedene Libs, JOGL ist eine OpenGL-Lib und LWJGL ist die "Light Weight Java Game Library".Heyy, dankeschön erstmal für deine Antwort. Aber wie genau verknüpfe ich den Code von Java denn nun mit der Grafik? Haben die anderen Services Java als Sprache oder muss ich den Code irgendwie mit einer Grafik verknüpfen durch hochladen?
Kann ich jetzt nur Oberflächen mit JavaFX erstellen, wenn ich Java nutze?
Liebe Grüße
Zunächst solltest du entscheiden, welche Art von Anwendung du haben möchtest: Desktop, Webfrontend, Android, ...Aber wie genau verknüpfe ich den Code von Java denn nun mit der Grafik?
JavaFX existiert unter anderem Namen auch für Kotlin.Kann ich jetzt nur Oberflächen mit JavaFX erstellen, wenn ich Java nutze?
Verstehe ich nicht ganz.Aber wie genau verknüpfe ich den Code von Java denn nun mit der Grafik? Haben die anderen Services Java als Sprache oder muss ich den Code irgendwie mit einer Grafik verknüpfen durch hochladen?
Aber wie genau verknüpfe ich den Code von Java denn nun mit der Grafik? Haben die anderen Services Java als Sprache oder muss ich den Code irgendwie mit einer Grafik verknüpfen durch hochladen?
Ich interpretiere die Frage so, dass mit Grafik das User Interface (UI) und im Speziellen das Grafische User Interface (GUI) gemeint ist, also Buttons, Listen, Texte, Drop-Down-Menüs und der ganze Kram.Verstehe ich nicht ganz.
Ah, das macht natürlich Sinn. Danke für die Erläuterung.Ich interpretiere die Frage so, dass mit Grafik das User Interface (UI) und im Speziellen das Grafische User Interface (GUI) gemeint ist, also Buttons, Listen, Texte, Drop-Down-Menüs und der ganze Kram.
Das ist historisch so gewachsen.Wieso wird Java kaum für die Spieleentwicklung genutzt? Die Performance der Rechner nimmt stetig zu und C# bietet doch auch gute Engines.
in java gab es auchj nicht typ sicherheit bis java5... wenn mans braucht wirds schon irgendwer bauen .. vllt ist der irgendwer ja duwird in Python (und meines Wissens nach auch in Kotlin) fröhlich hin- und hergecastet und ein Integer ist nach Gutdünken mal ein Integer und mal ein String, kann aber auch ein Double sein.
Öhm, wie kommst Du zu dieser Aussage? Es gab keine Generics, daher konnte man bei der Entwicklung die Typsicherheit nicht prüfen. Aber typ sicher war Java schon immer und Java hat Dir zur Laufzeit das schon entsprechend um die Ohren gehauenin java gab es auchj nicht typ sicherheit bis java5...
Da muss man immer ein bisschen aufpassen, was genau man vergleicht.meisten der neueren "Programmier"sprachen wie Python oder Kotlin sind für kleinen Skriptscheißkram ok, aber mehr auch nicht. Während Java so gebaut ist das es wenig Raum für Überraschungen gibt (z.B. dank Typsicherheit) wird in Python (und meines Wissens nach auch in Kotlin) fröhlich hin- und hergecastet und ein Integer ist nach Gutdünken mal ein Integer und mal ein String, kann aber auch ein Double sein.
Wie bereits von anderen geschrieben war Java schon immer typsicher.in java gab es auchj nicht typ sicherheit bis java5... wenn mans braucht wirds schon irgendwer bauen .. vllt ist der irgendwer ja du
Hm...da hatte ich bisher andere Informationen. Aber ich programmiere auch nicht in Kotlin, hatte die Aussage nur von einem Kommilitonen der Kotlin programmiert hat und ich ihn etwas über die Sprache ausgefragt habe, um mal etwas über den Tellerand zu schauen.Kotlin ist wie Java statisch und stark typisiert.
Ja, das stimmt natürlich. Ich denke auch daß Python ursprünglich nicht dafür gebaut wurde riesige Programme daraus zu machen oder wofür es heutzutage teilweise benutzt wird, insofern ist ein Vergleich zwischen Python und Java natürlich etwas ungerecht.Da muss man immer ein bisschen aufpassen, was genau man vergleicht.
Tendenziell ist Kotlin sorgen stärker typisiert als Java, da es den expliziten Unterscheid zwischen nullable und non-nullable gibt.Hm...da hatte ich bisher andere Informationen. Aber ich programmiere auch nicht in Kotlin, hatte die Aussage nur von einem Kommilitonen der Kotlin programmiert hat und ich ihn etwas über die Sprache ausgefragt habe, um mal etwas über den Tellerand zu schauen.
Aber wenn du das sagst...
Ich meinte weniger den Vergleich zwischen Java und Python direkt, sondern eher den der Typisierung in beidenJa, das stimmt natürlich. Ich denke auch daß Python ursprünglich nicht dafür gebaut wurde riesige Programme daraus zu machen oder wofür es heutzutage teilweise benutzt wird, insofern ist ein Vergleich zwischen Python und Java natürlich etwas ungerecht.
3 * "3" = 9
3 + "3" = "33"
3 + "3" => unsupported operand type(s) for +: 'int' and 'str'
Wie...das soll in Java funktionieren? Ich hätte da jetzt tatsächlich erwartet daß die IDE meckert. Das muß ich gleich mal ausprobieren.Java:3 + "3" = "33"
Das ist übrigens die Grundlage für alle Ausgaben a.la.If only one operand expression is of type String, then string conversion (§5.1.11) is performed on the other operand to produce a string at run time.
"Das Ergebnis ist: " + ergebnis
Das weiß ich, aber 3 ist ja kein String.Addition mit einem String bedeutet, dass der andere Wert zu einem String gemacht wird.
Byte byte = 128;
anything = byte + 16;