PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Applet oder nicht Applet das ist hier die frage



Gsus
10-02-2005, 20:58
Hallo ihr alle

ich habe vor ein 3d Spiel zu schreiben.

!!!!! Nein das soll keine sinnlose Grundsatz werden ob Java schnell genung ist !!!!!!!!!!!

ich will nur wissen warum in jedem Tutorial Applets genommen werden ich will lieber mit richtigen Frames arbeiten.

Jetzt meine frage warum schlagen dann alle Tutorials vor Applets zunehmen. Soll ich vielleicht doch Applets nehmen statt AWT oder Swing ??? :confused:

Danke im vorraus.

Mfg Gsus

peschmae
10-02-2005, 22:09
Also in Applets brauchst du meist auch AWT oder Swing irgendwo. Aber für ein 3d Programm brauchst du das beides nicht (oder nur am Rande).

Frage mich gerade was du für komische Tutorials liest. Ich hab in meinem Leben erst ein kurzes Testapplet geschrieben und sonst einiges in Java programmiert (das Applet war tatsächlich auch aus so nem komischen Tutorial).
Ich find Applets blöd. Wer dagegen ist soll die Hand aufstrecken.

Weniger komisches Tutorial (auch Buch genannt) wäre z.B. www.javabuch.de

MfG Peschmä

gaansch
10-02-2005, 23:50
Ich würd auch kein Applet dafür nehmen, mal abgesehen davon, dass ich Applets auch doof finde.

Wenn du ein 3d game machen willst, guck dir mal das hier an: http://javaisdoomed.sourceforge.net/

Gsus
13-02-2005, 12:13
danke erstamal für die antworten

leider ist es so das ich ein weltraum spiel programmieren will, weil erstens nicht so schwer und zweitens lese ich gerade wieder einmal ein Star Wars Buch und ich bin mal wieder dem Sience Fiction verfallen :rolleyes:

Nun auch danke für den link leider steht im dem nichts über Java3d zumindest habe ich es nicht gesehen. Aber ich kann ja auch schon ein bisschen Java habe auch schon 1-2 Programme geschrieben. Nurso nebenbei ich benutze das Buch hier -> http://www.galileocomputing.de/openbook/javainsel3/

Naja wie dem auch sei Ich werde es mal versuchen ohne Applet hinzu bekommen.

Mfg

Gsus

PS: Nochmal Danke

Lin728
13-02-2005, 12:30
Der grund warum überall Applets genommer werden, ist die Tatsache, dass Java eben den Vorteil hat auch im Browser laufen zu können.

lg

peschmae
13-02-2005, 13:30
Webstart ist zwar besser, aber da muss man ein Sun-Java installieren, was halt nicht jeder gern tut...


Nur interessehalber: Was denn wenn nicht Sun Java? Blackdown? IBM? Was ist da der Vorteil?

MfG Peschmä

Lin728
13-02-2005, 18:33
Was, wenn nicht Sun-Java:

Netscape-Java 1.1.5
Microsoft-Java 1.1.4 Build-3167 oder höher

Der Grund ist, dass viele Leute noch mit älteren Browsern arbeiten, und mein chef will das das Ding "überall" läuft.
Nun, das Dings besteht inzwischen aus 20.000 zeilen code und vieles wäre nicht nötig gewesen, wenn keine 1.1 kompatibilität gefordert gewesen wäre.

peschmae
13-02-2005, 19:15
JIT-Cache tönt gut. Das muss ich mir gleich mal angucken :)

MfG Peschmä

anda_skoa
14-02-2005, 17:34
Hast du zufällig auch eine Einstufung der freien VMs?
Speziell wenn keine Java2 Kompatibilität notwendig ist sollten die doch auch schon gehen, oder?

Ciao,
_

Lin728
15-02-2005, 09:13
Klar, kann ich machen - aber sind halt subjectiv meine Erfahrungen + Benchmarks + Berichte, keine 100%igen Fakten.
-------------------------------

GCJ: Ein AOT-Compiler also nicht wirklich eine JVM. Performance ganz O.K., fällt jedoch bei spezifischen Sachen wie Reflection oder Garbage-Collection zurück.
Sehr aktuell da gute GNU-Classpath integration.

GIJ: Eher nicht ernst zu nehmen, ganz gut um per GCJ dynamisch Klassen zu laden, aber sons ist GIJ eher ein sehr biderer Interpreter, welcher in C geschrieben ist und ca. 25% der Performance des SUN-Interpreters (-Xint schaltet JIT aus) bringt.

Kaffe:
Schaut eher schlecht aus, schon sehr lange kein neues Relsease mehr. Aber bester JIT (bzw einziger) aller freien JVMs - Lizenzproblem wegen GPL Classpath, GNU-Classpath ist GPL mit einer Ausnahme.

SableVM:
Eine kleine JVM welche auch nur Interpreter-Modus hat, aber dafür wirklich immer mit den letzten Classpath-Releases daherkommt, super um an Classpath mitzuarbeiten oder die neuesten Funktionen zu testen.

IKVM:
JVM welche auf .NET läuft und Java-class-files dynamisch nach .NET-bytecode übersetz. Basiert zu großen Teilen auch auf GNU-Classpath, nicht 1000% Java-konform bei Kleinigkeiten wos einfach nicht zusammenpasst mit .NET.
In der Praxis aber sehr brauchbar - und in Zusammenarbeit mit Mono bekommt man sogar einen JIT der dem von Kaffe ebenbürtig ist.
Jetzt wo mono bald einen Generational-GC bekommt, dürfte nun auch endlich das GC-Problem der freien JVMs gelößt sein.

Orp:
Ein Research-Projekt von Intel, eher ein totes Projekt aber sehr guter JIT. Entwicklung eher in Richtung guter JIT als brauchbare JVM ;-)

Kissme ...:
Mögen ganz gute Interpreter sein, aber eher Nischendasein - zu wenig "universell" gut, habe diverse Vorzüge aber viele eher schwache bereiche.


Resümee:
GCJ und IKVM sind meiner Meinung nach die besten Projekte, bzw jene mit den größten Zukunftsaussichten. Kaffe hätte auch Potential, aber leider tut sich da wenig.
IKVM ist meiner Meinung nach interressant, da die Entwicklung einer VM sehr zeit- und kostenaufwendig sind, die erzeugung von VM-Bytecode ist da wesentlich einfacher.
Wenn man mit Mono eine schnelle, gute Runtime hat, könnte man Perl, Python, Java, etc. darauf hosten und könnte sich die unendlich vielen mittelmäßigen VMs ersparen (PHP, Perl, ..). Eine Verbesserung an Mono würde sich an vielen Stellen positiv auswirken - die Lizenzproblematik steht auf einem anderen Blatt.
Aber der Weg ist noch lange ;-)

lg

anda_skoa
15-02-2005, 14:14
Danke für die super Zusammenfassung.

Hab selber nur mal kurz mit Kaffe experimentiert und die Version mit GNU Classpath benutzt.
Hat in der alten Version von Debian stable eines meiner komplexeren (viel dynamic class loading) Projekte aus Unizeiten ziemlich problem los kompiliert und zum Laufen gebracht.

Hab dabei sogar einen Bug gefunden und lokalisiert, war aber in der aktuellen Version schon gefixt :)

Grund für die Aktion war eigentlich ein Aufruf eines Classpath Entwicklers in einem Thread auf debian-kde zur mehr Mitarbeit beim Testen der freien Implementierungen.
http://lists.debian.org/debian-kde/2005/01/msg00081.html

Vielleicht hat ja jemand andere auch Zeit und Lust mal eines der eigenen Projekte zu testen.

Ciao,
_

peschmae
15-02-2005, 16:00
Den Aufruf hatte ich auch mal gesehen. Und sogar mal Sablevm mit Eclipse versucht. Geht. Allerdings ists (noch) langsamer als auf Suns JVM. Also warte ich auf den JIT (der ja schon lange in Arbeit ist ;)).

Insgesamt ist das Problem wohl wirklich dass es so viele verschiedene freie JVMs gibt. Die bei einem Projekt alle zu testen oder gar zum laufen zu bringen ist etwas viel Arbeit.

MfG Peschmä

Lin728
15-02-2005, 16:51
Was ich super finde ist, dass schön langsam auch Swing was wird bei den freien JVMs, hauptsächlich wegen der Arbeit der GNU-Classpath Entwicker.

So gab es vor kurzem einen JEdit zu bestaunen, welcher auf GNU-Classpath lief - und jedit ist eher eine riesige Swing applikation.



Insgesamt ist das Problem wohl wirklich dass es so viele verschiedene freie JVMs gibt. Die bei einem Projekt alle zu testen oder gar zum laufen zu bringen ist etwas viel Arbeit.

Ja genau, das ist unter anderem ein Hauptproblem! Aber GNU-Classpath bringt wenigstens eine einheitliche Klassenbibliothek für die freien JVMs.