[Perfromance Benchmark] Java - C++
-
ich kann dir nur von meinen system berichten, aber wenn ich in ein explorer switche sehe ich zwar kein graue wand aber die sysmbolleiten flakern kurz auf und das fenster was vorher im vordergrund war verschwindet erst auch aus der mitte des neuen fenster, auf meinen system ist jedit nicht viel langsammer oder zumindestenz nicht langsammer das es für mich von nachteil wäre gegen über nativen guis, nur das bei jedit ne graue wand zu sehen ist
außerdem wenn man z.b. der javavm eine andere preorität verpasst dann wird das auch noch schneller, ich möche gene mal wissen mit welcher preorität die native-gui gezeichnet wird
-
@dEUs: Ich gebe absolut recht! Java/Swing ist im Vergleich mit C++/Qt nicht vergleichbar. Habe ich auch nirgends behauptet. Ich sage nur, daß es nicht mehr so ist wie früher.
Die Zukunft in der Wirtschaft(nicht typische Desktopanwendungen!) scheint aber der Thin-Client zu werden. Das sieht man auch an den Stellenangeboten für Java wo häufig J2EE gefordert wird.
Ich persönlich kenne auch keine Multi-Tier Architektur für C++ die irgendwo namenhaft Verwendung findet. Aber vielleicht könnt ihr mir helfen.
Auch im Zusammenhang mit EAI, Webservices und co. höre ich immer nur J2EE.
-
Optimizer schrieb:
Sorry, aber das ist halt bei mir einfach nicht so, falls sich das auf Eclipse bezieht. Für Netbeans kann ich auch sprechen. Sonst hab ich mir wohl zu wenig Java-IDEs angeschaut.
Was für einen PC hast du denn?
Als mein 'alter' PC (Athlon Tbir 1,3Ghz 384MB ram) geht beim starten von NetBeans (das alte, dass noch auf 1.4 lief und nicht das neue falls es schon draussen ist) ordentlich in die knie. startzeiten fernab von gut und böse und intellisense im sekunden bereich.mein vc++ hat intellisense auf 350ms eingestellt und es ist quasi immer da wenn ich es will - keine sekunden verzögerung (ob er wirklich nur 350ms braucht es anzuzeigen oder doch 520ms weiss ich aber nicht).
ZendStudio ist ein anderes Beispiel. Hier am Notebook Celeron 700Mhz, 384MB Ram eine halbe minute zum starten (ohne projekt laden oder sonstwas, nur die nackte IDE - läuft aber auch auf 1.4 - eine 1.5er VM habe ich noch nicht).
NetBeans auf dem Notebook zu starten ist schon fast pervers. genauso die latenzzeit beim tippen und beim intellisense.
auf meinem normalen desktop pc athlon xp 2,2Ghz 512MB ram geht alles mehr oder weniger flüssig - da kann man arbeiten, wobei die Java IDEs merklich träger sind als die c++ ides. wobei man dennoch arbeiten kann, nur das laden von einem unfangreichen projekt bei netbeans ist langwierig.
sag mir: woran liegt es?
das sind keine künstlichen szenarien oder sonstwas. es ist direkt aus dem täglichen leben gegriffen.Die einzige IDE, die ich kenne und mit dem Syntaxcoloring nicht hinterherkommt ist die Visual C# 2005 Express Beta. Wenn ich da ne Datei öffne, ist sie erstmal 10sec nicht gecolort.
Eine Beta Version? naja, habe ich nie verwendet, aber VC6, VC7 sind sau schnell.
Trotzdem, woher kannst du wissen, dass es an Java liegt?
Wissen kann man es nicht, aber es ist auffällig. Woran könnte es sonst liegen?
OpenOffice ist AFAIK zu einigen Teilen in Java geschrieben, ich kann aber jetzt nicht sagen, welche Teile.
finde es heraus, dann können wir es gut vergleichen.
-
Also ich benutz nur IntelliJ als Java-IDE und das ist IMO mit Visual Studio .NET die beste IDE, die ich jemals gesehen habe. Es hat traumhafte Features und ist zu keinem Zeitpunkt langsam. So viel zu dem Schwachsinn "Java App == langsam"
-
interpreter schrieb:
So viel zu dem Schwachsinn "Java App == langsam"
Hast recht. Jetzt wo du es sagst, Java Apps sind viel schneller als alles andere.
-
Ich frage mich immer was die ganzen (Java-)IDEs überhaupt beim Starten machen.
Wenn ich eine IDE schreiben würde, würde ich beim Start nur eine Konfigurationsdatei auslesen und die nötigen Fenster erstellen. Sowas dauert auch in Java nicht lange.
-
Shade Of Mine schrieb:
interpreter schrieb:
So viel zu dem Schwachsinn "Java App == langsam"
Hast recht. Jetzt wo du es sagst, Java Apps sind viel schneller als alles andere.
Schöne Fehlinterpretation. Wenn ich sage, dass X nicht automatisch langsam ist, dann heißt das noch lange nicht, dass X viel schneller ist als {Y,Z,...}

-
interpreter schrieb:
Schöne Fehlinterpretation.
Wieviele Beispiele wurden gebracht wo eine Java Anwendung lahm ist?
Nun kommt 1 Gegenbeispiel wo eine Java Anwendung nicht lahm ist und schon sollen alle anderen Beispiele ungültig sein?Wenn ich sage, dass X nicht automatisch langsam ist, dann heißt das noch lange nicht, dass X viel schneller ist als {Y,Z,...}

Es wurde auch nicht gesagt dass Java zwangsläufig lahm ist.
dEUs hat es schön ausgedrückt, finde ich.
-
Shade Of Mine schrieb:
OpenOffice ist AFAIK zu einigen Teilen in Java geschrieben, ich kann aber jetzt nicht sagen, welche Teile.
finde es heraus, dann können wir es gut vergleichen.
http://www.openoffice.org/FAQs/faq-source.html#4 schrieb:
The source is written in C++ and delivers language-neutral and scriptable functionality, including Java[tm] technology APIs.
Zum Thema Java Programme. Das einzige Java Programm, was ich regelmäßig nutze ist Azureus auf Java 1.5.0 und es läuft stabil und relativ flott (starten dauert halt ein wenig länger). Da hat sich schon einiges getan, wenn ich mir angucke, was meine vorherigen Erfahrungen mit Java Programmen waren. Aber Azureus lässt sich sicher nicht mit einem umfangreichen Programm wie Eclipse vergleichen.
-
Shade Of Mine schrieb:
interpreter schrieb:
Schöne Fehlinterpretation.
Wieviele Beispiele wurden gebracht wo eine Java Anwendung lahm ist?
Nun kommt 1 Gegenbeispiel wo eine Java Anwendung nicht lahm ist und schon sollen alle anderen Beispiele ungültig sein?Es zeigt, dass Java Anwendungen NICHT generell langsam sind.
-
interpreter schrieb:
Shade Of Mine schrieb:
interpreter schrieb:
Schöne Fehlinterpretation.
Wieviele Beispiele wurden gebracht wo eine Java Anwendung lahm ist?
Nun kommt 1 Gegenbeispiel wo eine Java Anwendung nicht lahm ist und schon sollen alle anderen Beispiele ungültig sein?Es zeigt, dass Java Anwendungen NICHT generell langsam sind.
Schöne Fehlinterpretation deinerseits

Das hat nämlich niemand behauptet. (Oder? Ich mal nciht.) Sondern, dass Java-Programme anscheinend eher lahm sind als C++-Programme.
-
dEUs schrieb:
interpreter schrieb:
Shade Of Mine schrieb:
interpreter schrieb:
Schöne Fehlinterpretation.
Wieviele Beispiele wurden gebracht wo eine Java Anwendung lahm ist?
Nun kommt 1 Gegenbeispiel wo eine Java Anwendung nicht lahm ist und schon sollen alle anderen Beispiele ungültig sein?Es zeigt, dass Java Anwendungen NICHT generell langsam sind.
Schöne Fehlinterpretation deinerseits

Das hat nämlich niemand behauptet. (Oder? Ich mal nciht.) Sondern, dass Java-Programme anscheinend eher lahm sind als C++-Programme.
Wenn zig Leute Beispiele bringen, wie langsam doch die Java Programme/IDEs sind und kein einziges Gegenbeispiel aufgezeigt wird, dann entsteht eben schnell dieses (fehlerhafte) Bild.
-
also wer sagt java/swing sei genauso schnell wie c++/Qt leidet ganz klar an realitätsverlust.
swing ist nunmal lahm, darunter leiden imo auch IDEs wie eclipse.da gibts doch gar nichts zu diskutieren.
-
borg schrieb:
da gibts doch gar nichts zu diskutieren.
Anscheinend doch, wie du erstaunt auf Seite 6 bemerken magst

Ich hab mir mal die IntellJ IDEA IDE runtergeladen. War bisher in der Tat angenehm schnell, allerdings konnte ich sie nicht dazu bewegen mir ein Autovervollständigen-Menü anzuzeigen.
-
borg schrieb:
swing ist nunmal lahm, darunter leiden imo auch IDEs wie eclipse.
äh, Eclipse nutzt gar kein Swing. Die haben doch ein eigenes System mit dem Namen SWT. SWT soll klein und schnell sein und native Widgets unterstützen.

-
Azureus nutzt auch SWT, ist aber schnell.
-
borg schrieb:
also wer sagt java/swing sei genauso schnell wie c++/Qt leidet ganz klar an realitätsverlust.
Wo steht das?
borg schrieb:
da gibts doch gar nichts zu diskutieren.
Wenn ich mal zitieren darf WER als erstes damit angefangen hat:
borg schrieb:
wie wärs wenn er mal swing mit Qt/winapi vergleicht, da bin ich ja mal aufs ergebnis gespannt.
*kopfschüttel*
-
dEUs schrieb:
Können alle Javaprogrammierer jetzt plötzlich nciht mehr programmieren?
Was ich damit sagen will:
Ich finde es doch recht seltsam, dass alle Applikationen, die bei mir so ultralahm waren, bisher alle in Java geschrieben waren. Du willst doch nicht den ganzen Entwicklern einfach Versagen vorwerfen?Stimmt, es gibt keine langsamen C++ Anwendungen.
Spätestens jetzt verlassen wir die reale Welt und reden nur noch Unsinn. Battlefield Vietnam hat eine ultra-schlechte Grafikperformance und sieht dabei noch deutlich schlechter aus als FarCry. Woher das kommt? Die sind doch beide in C++ geschrieben.Ja, es liegt wohl tatsächlich an der Programmierung!!

Und wenn eine Code Completetion langsam ist, dann liegt das vielleicht mit 90% eher daran, dass ich eine ungeeignete Datenstruktur gewählt habe oder die Informationen gar nicht cache. Und nicht an Java.

Es gibt genauso viel schlecht geschriebene C++ Programme wie Java-Programme. Natürlich ist Eclipse deshalb nicht schlecht, aber es ist (noch!) nicht sehr gut optimiert. Eclipse ist ein bisschen komplexer als VS, das erkennt jeder, der mit beiden IDEs ein Weilchen gearbeitet hat.
Shade of Mine schrieb:
Wieviele Beispiele wurden gebracht wo eine Java Anwendung lahm ist?
Und was bringen die Beispiele? Der Benchmark ist auch eine Sammlung Beispiele, muss ich jetzt von dem auch was halten?
-
dEUs schrieb:
Ich hab mir mal die IntellJ IDEA IDE runtergeladen. War bisher in der Tat angenehm schnell, allerdings konnte ich sie nicht dazu bewegen mir ein Autovervollständigen-Menü anzuzeigen.
IntelliJ hat mehrere Arten der Autovervollständigung (weiß jetzt net, was genau du meinst). Strg + Space (z.B. nach dem du "pri" eingegeben hast) ist z.B. die Basic-Completion. Strg + Alt + Space die Class-Completion (z.B. nach dem du "InputStream" eingegeben hast. Einfach mal in der Hilfe oder "completion" nachschlagen. Sehr praktisch sind übrigens auch die Live-Templates ( "psvm" eingeben + TAB)
-
Ist ja schön und gut, dass ihr Eclipse und andere Java-IDEs als lahm darstellt und betont, dass der JCreator sogar in C++ geschrieben wurde. Ihr stellt Java-IDEs wie Eclipse teilweise als "unbrauchbar" dar, weil die IDE ja viel zu lahm ist.
Habt ihr mal einen Realitätscheck gemacht? Eclipse ist sicherlich nicht unbrauchbar, stattdessen handelt es sich wohl um die am meisten genutzte Java-IDE. Die meisten Javaentwickler scheißen also auf den Geschwindigkeitsvorteil, den eine IDE wie JCreator bieten soll. JCreator ist meistens nur dann im Gespräch, wenn man einen besseren Editor für Anfänger haben möchte, der die Anfänger möglichst nicht mit irgendwelchen Features überfordert. Auch Netbeans wird deutlich häufiger als der JCreator genutzt, falls ihr ein Beispiel für ein Swing-Programm braucht.
Ein Blick auf die IDEs zeigt also nur, dass der Geschwindigkeitsnachteil von Java nicht so ein großes Problem ist, wie es hier von vielen dargestellt wird.