horstpenner schrieb:
rklm schrieb:
Das Programm hat kein Webinterface.
Ich meinte das Interface, was das ZDF liefert, von dem man leider abhängig wäre. 😉
Java ist nicht langsam. Hast Du dieses Programm mal benutzt?
Im Vergleich zu C ist Java eine ziemlich lahme Krücke: Java programs versus C gcc.
Und welcher dieser Tests ist für Dich da relevant; der, bei dem das Zeitverhalten bei 3:12 liegt oder der, bei dem das Verhältnis bei 6:7 steht?
Sind diese Algorithmen überhaupt relevant? Auch die Testparameter (Datenmenge, Laufzeit, Architektur)?
Das Programm ist doch ein grafisches - diese warten ohnehin meist auf Benutzereingaben und machen sonst nichts.
Schon die Tatsache, dass man dieses JRE braucht, hört sich für mich einfach völlig unpraktisch an und nervt auch noch. Hatte schon Programme, die dann nur mit JRE 7 liefen, und ich so das alte runterladen musste...
Das neue Programme nicht mit alten JREs laufen kommt vor, und ist bei C-Programmen analog, wenn diese gegen dynamische Bibliotheken gelinkt sind. Der umgekehrte Fall kommt eigentlich nicht vor, außer da ist was verbastelt, etwa ein hartcodierter Versionstest der nur die Vergangenheit im Blick hat, und nie mit einer zukünftigen Version gerechnet hat. Daher würde mich interessieren, welches Programm das war.
Die Ideallösung ist aus meiner Sicht immer ein Binary, was für eine bestimmte Plattform angepasst wurde und somit perfekt läuft.
Ja, das kennt man. Dann wird eine Windowsversion compiliert und der Rest interessiert nicht und fällt unter den Tisch. Javaprogramme laufen tatsächlich meist auf allen Plattformen, für die es eine JVM gibt.
Da hast Du einfach die Garantie, bis der Befehlssatz sich ändert. Das ganze auf so einem virtuellen Zeug laufen zu lassen, ist mir irgendwie zu umständlich. Dann kommt noch die Unfähigkeit bei Java dazu, Assembler- Code einzubetten... Vieles, was hardwarenah ist, geht so nicht.
Viele Leute brauchen das nie. Die meisten schaffen es schon sich mit Zeigern und Puffern ins Knie zu schießen. Man kann aber, wenn man unbedingt will, C-Code von Java aus aufrufen und sollte daher, da man von C aus Assembler aufrufen kann, auch indirekt zumindest Assembler aufrufen können, wenn man unbedingt muss.
Vor wenigen Jahren noch kursierten so ähnliche Benchmarks, wo auch Java häufiger vor C lag. Das hängt auch immer davon ab, wer den Code für die Sprache optimiert hat und ist daher eine Randbedingung, die in der Realität auch nicht oft vorkommt.