Von Entwicklungszeit zur Laufzeit

D

darkangel.

Neues Mitglied
0
Hallo miteinander,

ich habe eine Verständnisfrage an euch. Und zwar wird zur Entwicklungszeit java bytecode erzeugt, aus diesem wird nach der Erzeugung mit dem Tool dx dalvik bytecode erzeugt. Dieser wird dann zur Laufzeit auf dem Gerät ausgeführt korrekt?

Wird der dalvik bytecode auf dem Gerät also nochmals übersetzt ? Kann ich mir mom. Zumindest nicht vorstellen, da es ja nur Performance Verlust bedeutet.

Ich hoffe auf zahlreiche Antworten, da es bislang immer hieß die Java Runtime sei so langsam und es würde keinerlei Spaß machen für Android etwas aufwändigeres zu entwickeln ;)
 
  • Danke
Reaktionen: darkangel.
DieGoldeneMitte schrieb:
Dass die Java Runtime lahm ist, war schon vor 10 Jahren ein veraltetes Vorurteil.

Zur Frage: Auch der Dalvik Code wird "just-in-time" in nativen Code weiterübersetzt. (Dalvik (software) - Wikipedia, the free encyclopedia)


Danke für die Antwort. Die Aussage, das sie Lahm ist war hier allerdings wirklich nur auf mobile Endgeräte bezogen und nicht auf Desktops etc :)

Muss mir bezgl. Performance bereits jetzt schon ein Kopf machen, da wir dabei sind in nächster Zeit unsere Applikation auch für Android / WP7 umzusetzen. Beim iPhone / iPad und Mac hatten wir bislang keinerlei probleme, allerdings wird hier der Code auch direkt ausgeführt und wir haben Zugriff auf dessen Speicherverwaltung.
 
Tja, das liegt wohl daran, was du für App entwickelst.

Eine saubere Implementation vorausgesetzt, wirst du wohl nicht viele Probleme haben mit der Performance von JAVA. Es gibt sogar Spiele, die rein in Java umgesetzt sind und gut laufen.

Solltest du eine derart aufwändige App haben, dass es abzusehen ist, dass es nicht gut laufen wird, dann kannst dir auch mal das NDK ansehen.
 
  • Danke
Reaktionen: darkangel.
Wie swordi schon gesagt hat, könnt ihr für performance-kritische Stellen in euren Apps auf das Android NDK umsteigen, dass es euch erlaubt Code in C/C++ zu schreiben. Oder sogar die ganze App, wenn ihr euch das geben möchtet ;)
 
  • Danke
Reaktionen: darkangel.
Wunderbar, vielen dank für diese Info. Bin bisher davon ausgegangen, das es nur bedingt möglich wäre C / C++ zu nutzen.
 

Ähnliche Themen

S
Antworten
17
Aufrufe
555
jogimuc
J
5
Antworten
22
Aufrufe
1.422
590239
5
M
Antworten
4
Aufrufe
1.173
swa00
swa00
Zurück
Oben Unten