Objektorientiert und deshalb langsamer?

Status
Nicht offen für weitere Antworten.

StarSeven

Bekanntes Mitglied
Hallo, in der Schule hat heute zu mir jemand gesagt das Objektorientierte Sprachen langsamer sind.
Ich konnte das eigentlich nicht glauben, den warum sind sonst Sprachen wie C++, Delphi, C# bestimmt auch, oder? und nichtzuvergessen Java objektorientiert.
Stimmt seine Aussage nun?
 
B

Beni

Gast
Ganz unrecht hat er jedenfalls nicht: Objektorientierte Sprachen sind etwas langsamer, da sie mehr "Verwaltungsaufwand" haben.

Allerdings sind die heutigen Compiler sehr gut, und ein c++ Programm wird tatsächlich in einen Code übersetzt, denn man auch bei einer "direkteren" Programmierung fast nicht überbieten kann.

Zusätzlich könnte man ohne OOP einige Progis schon gar nicht mehr schreiben (oder nur sehr mühsam).

Bei Java ist das Problem, dass es eine interpretierte Sprache ist: Die VM (virtual machine) führt ein Java-Progi aus. Und da alles über diese VM abgewickelt wird, gibt es doch noch einige Geschwindigkeitseinbussen. Hat aber nichts mit OOP zu tun!

mfg Beni
 

StarSeven

Bekanntes Mitglied
Danke für die Antwport, warum Java nicht extrem schnell ist wusste ich, bloß ich dachte bei der Aufzählung einiger Objektorinitertrer Sprachen wollte ich in einem Java-Forum die Programmiersprache Java nicht weglassen :wink:
 

Tobias

Top Contributor
Naja, aber der zusätzliche Verwaltungsaufwand einer objektorientierten Sprache steht in keinem Verhältnis zu ihren Vorteilen: Der Abstraktionsgrad ist geringer (ja, geringer), wodurch es viel leichter wird, komplexe Systeme zu programmieren. Ohne OOP würde ich nicht Programmierer werden wollen...

mpG
Tobias
 

Grizzly

Top Contributor
Der Quellcode von OO-Programmen ist - vor allem bei graphischen Anwendungen - um einiges übersichtlicher. Und die Abstraktion ist besser. Beides kann (muss aber nicht :wink: ) dazu beitragen, dass der Quellcode modularer und fehlerfreier ist.

Aber natürlich zu dem Preis, dass die Programme etwas langsamer sind.
 

L-ectron-X

Gesperrter Benutzer
Die Compiler werden bei jeder neuen Java-Version in ihrer Performance verbessert.
In der c't habe ich mal über einen Vergleich gelesen, in dem Konsolenorientierte Java-Programme in puncto Geschwindigkeit den Konsolenorientierten C++/C#-Programmen in nichts nachstehen, ja sogar teilweise schneller sind.
Leider trifft das nicht unbedingt für Swing-Programme zu, die werden nämlich von ihren Konkurrenten abgehängt.
 

Grizzly

Top Contributor
L-ectron-X hat gesagt.:
[...]Leider trifft das nicht unbedingt für Swing-Programme zu, die werden nämlich von ihren Konkurrenten abgehängt.

Das könnte unter anderem mit dem hohen Abstraktionsgrad der Swing zusammenhängen. Borland Delphi's VCL hat bspw. nicht so einen hohen Abstraktionsgrad und ist auch etwas schneller.
Und ob der hohe A. der Swing positiv oder negativ ist, darüber kann man sich streiten. :wink:
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben