Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

11

13.02.2007, 14:48

Es gibt übrigens CPUs die Javacode direkt ausführen können ;)
Jedoch nicht für den x86

Kasenoru

Frischling

Beiträge: 79

Beruf: Softwareentwickler

  • Private Nachricht senden

12

13.02.2007, 15:14

Zitat

Hallo,
Ich hab mich schon lange mit C++ beschäftigt, aber als ich dann gehört
habe, dass Java leichter sei, wollte ich mich mal informieren, ob es
sich lohnen würde, Java zu lernen..

Ja, es ist einfacher als C++, lohne würde es sich, zumindest wenn du Plattformunabhänig arbeiten willst.
Willst du nur für Windows entwickeln, hat Java wenig Sinn.
Für Windows wäre C/C++ bzw. C# angebrachter.

Zitat

Was ich eigentlich vorhabe ist folgendes:
- Plattformunabhängig programmieren können
- Anwendungen und kleine 2D Spiele programmieren können
- keine > 1000 Zeilen code schreiben müssen, um eine simple GUI-Anwendung programmieren zu können...


Dann wäre Java geeignet.
Die Frage ist nun natürlich, wie du am besten an die Sache heran gehst.
Wenn du mit Java 2D-Spiele entwickeln möchtest, empfehle ich einen Wrapper auf eine Native C-Bibilothek, die beste Kombination ist SDL und OpenGL.
Du kannst die SDL für Sound und Musik sowie Maus/Tastatur Eingabe verwenden.
OpenGL hingegen kannst du für dein Grafiksystem verwenden.

Als Wrapper empfehle ich dir SDLJava:
http://sdljava.sourceforge.net

Es ist sicher nicht der beste Wrapper, aber für 2D-Spiele perfekt.
Ich habe da selbst schonmal ein Framework namens JGDS geschrieben, die Abkürzung steht für Java Game Development System. :D

Was die Geschwindigkeit betrifft, so kannst du auch mit Java extrem gute Werte erzielen.
Du musst halt nur aufpassen, also nur dann Objekte erstellen und Methoden aufrufen, wenn es auch wirklich nötig ist.
Denn wenn man mit Java schlampig Arbeitet, weil man zusehr an C++ gewöhnt ist, dann kann es passieren das das ganze extrem langsam läuft.

Neben diesen Sachen brauchst du natürlich auch noch eine Entwicklungsumgebung, ich rate dir von Eclipse, NetBeans, etc erstmal ab.
Weil diese Entwicklungsumgebungen sehr groß und schwer sind, ein Anfänger ist damit total überfordert.
Ich empfehle dir da den JavaEditor zu verwenden, du kannst ihn hier laden:
http://lernen.bildung.hessen.de/informatik/javaeditor/index.htm

Nunja, ich hoffe ich konnte dir weiterhelfen.

Mit freundlichen Grüßen

Kasenoru

13

13.02.2007, 16:04

Zitat von »"Kasenoru"«

Als Wrapper empfehle ich dir SDLJava:
http://sdljava.sourceforge.net

Es ist sicher nicht der beste Wrapper, aber für 2D-Spiele perfekt.
Ich habe da selbst schonmal ein Framework namens JGDS geschrieben, die Abkürzung steht für Java Game Development System. :D

Funktioniert der Wrapper mit mehreren OSs oder ist der nur für Windows?

EDIT: Hab mir eben erst den Link angesehen. Feine Sache :) Linux und Windows gehen Mac OS X wurde nicht getestet

Umut

Frischling

  • »Umut« ist der Autor dieses Themas

Beiträge: 17

Wohnort: Köln

Beruf: Schüler

  • Private Nachricht senden

14

13.02.2007, 21:12

Danke Kasenoru :)
Genau so eine Antwort hab ich auch erwartet ;)

Dann steige ich mal auf Java um :) es gibt nichts mehr, wo ich sagen kann, dass es nicht für mich geeignet ist.. 3D Spiele will ich sowieso nicht programmieren.. damit musste ich mich jahrelang quälen.. aber 2D kann ich dann auch mit SDLJava programmieren :)


Vielen Dank nochmal an alle, die mir weitergeholfen haben!! War echt nett von euch!!


MfG
Umut
If you put your mind to it,
You could accomplish anything.

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

15

13.02.2007, 21:38

Zitat

es gibt nichts mehr, wo ich sagen kann, dass es nicht für mich geeignet ist..
dann probier mal Prolog^^
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

rewb0rn

Supermoderator

Beiträge: 2 773

Wohnort: Berlin

Beruf: Indie Game Dev

  • Private Nachricht senden

16

13.02.2007, 21:43

Prolog war ein Meilenstein in der Entwicklung der Programmiersprachen! Zugegeben für den Anwendungsbereich wenig sinnvoll^^

Umut

Frischling

  • »Umut« ist der Autor dieses Themas

Beiträge: 17

Wohnort: Köln

Beruf: Schüler

  • Private Nachricht senden

17

13.02.2007, 22:16

ich meine was Java angeht :lol:
es erfüllt meine Anforderungen vollkommen ;)
deswegen sagte ich, dass es bei Java nichts gibt, was für mich dagegen spricht..
If you put your mind to it,
You could accomplish anything.

riCo

Treue Seele

Beiträge: 165

Beruf: Student

  • Private Nachricht senden

18

14.02.2007, 07:30

Nimm es mir nicht übel, aber Java ist echt das letzte was ich nehmen würde. Ich hasse es, hatte in der schule mit Java programmieren müssen, da unser UML-Tool nur Javacode erzeugen konnte. Wenn du C++ kannst, setzt du dich an fast jede Programmiersprache und los gehts. Die Diskussionen um Java ja oder nein gibt es reichlich. Unser Datenbanken-Dozent meinte in ner Probevorlesung als der geprüfte Dozent meinte er will mit uns Java machen --> Java ist hässlich. Tut mir leid wenn ich da mit dir so hart ins Gericht gehe, aber C# nicht zu benutzen weil es von Microsoft ist, ist totaler Schwachsinn!

Bei C++ weiss man wenigstens noch was man macht...

ERGO: Mach was du willst, meine Erste Wahl wäre C++ und wenn das zu stressig wäre, würde meine Wahl definitiv auf C# fallen.
Wir leben alle unter dem Sternenhimmel, aber wir haben nicht alle den gleichen Horizont.

19

14.02.2007, 11:35

Ob jetzt C# oder Java ist doch eigentlich total egal. Die hochgelobten Features von C# wie die IL gibt es von Java schon lange und sind von Microsoft einfach nur umbenannt und ein bisschen in Werbung gepackt worden. Ich habe mich trotzdem zu C# entschieden, weil ich mit den IDEs einfach viel besser klar komme und dann schneller entwickeln kann. Trotzdem finde ich Java sehr gut.

Man muss aber ganz klar sagen, dass beide Sprachen im Test bei großen Engines z.T. schlechter abschneiden. Schau dir z.B. Axiom oder Ogre an.

Ich finde es nicht schlecht, wenn man mit beidem arbeitet. Man hat ein fundiertes C++ Gerüst, wie z.B. Ogre, OpenSceneGraph usw. und baut sein Game-Logik und vor allem den Editor mit C# oder Java auf. Das hat nahezu keine Geschwindigkeitsnachteile, weil auch die C++ Features im Low-Level Bereich, die besonders für Sachen wie Partikel-Systeme usw. unverzichtbar sind, genutzt werden können, man selbst kann aber wirklich schnell Ergebnisse zielen. Warum also nur die Vorteile von einer Sprache nutzen, wenn man die Vorteile beider nutzen kann?

Das wirklich gute an C# finde ich aber die unsafe-Bereiche, das DXSDK zeigt, wie man damit sehr gute Ergebnisse erzielen kann.

Kasenoru

Frischling

Beiträge: 79

Beruf: Softwareentwickler

  • Private Nachricht senden

20

14.02.2007, 16:07

Sehr schön, was man hier so ließt, ich rufe nochmal folgendes Zitat auf:

Zitat

Was ich eigentlich vorhabe ist folgendes:
- Plattformunabhängig programmieren können
- Anwendungen und kleine 2D Spiele programmieren können
- keine > 1000 Zeilen code schreiben müssen, um eine simple GUI-Anwendung programmieren zu können...

Es sollte einfach so sein, dass ich schnelle Ergebnisse erziele.. und nicht Wochen brauche, um z.B. ein einfaches Editor programmieren zu können...
Es sollte einfach nicht so trocken und kopfzerbrechend sein, sondern einfach Spaß machen..


Darum geht es in diesem Thema, das sollte man vorher lesen.
Wenn einem C++ nicht gefällt, was ich durchaus verstehen kann, so wäre hier die beste Lösung die Programmiersprache Java.
Aber definitiv nicht C# und Managed DirectX oderso.
Und das du, riCo, Java nicht leiden kannst, ist eine persönliche Sache wie ich finde, den einen gefällt es den anderen weniger, es kommt auch immer darauf an, was man machen möchte.

Jede Programmiersprache hat ihre Eigenschaften und einen entsprechenden Anwendungbereich, das sollte man bedenken.
Und so Sachen zu schreiben wie "Java ist schlecht und blöd", zeigt reines Unwissen in der Programmierung.

Und wie gesagt, kommt es immer darauf an was man nun machen möchte.

Es ist jetzt nicht so, das Java meine Lieblingsprache ist oderso, ich mache es sowiso grundlegend anders.
Es ist dumm sich eine "Lieblingsprache" auszusuchen und dann alle Probleme mit dieser zu lösen, damit tut man sich nur unnötig schwer.

Man sollte zuerst das Problem analysieren, sich überlegen welche Anforderungen die Software erfüllen muss.
Anschließent sollte man sich eine Programmiersprache aussuchen, die die Anforderungen erfüllt.

Manchmal kann es auch nicht schaden mit 2 Programmiersprachen zu arbeiten.
Z.b. könnte man eine Grundengine für ein Grafiksystem in C++ schreiben und den Rest z.b. Ruby.

Es kommt immer darauf an, was man tun möchte.
Und wenn man sich obiges Zitat einmal durchließt, dann sollte man einsehen, das C# hier fehl am platze ist.

Es geht hier nicht darum, welche Programmiersprache die tollste ist, sondern es geht um eine Programmiersprache, die für Umut's Problem am besten geeignet ist.

Mit freundlichen Grüßen

Kasenoru

Werbeanzeige