Java ist ne verrückte Sprache....
Geizhals » Forum » Programmierung » Java ist ne verrückte Sprache.... (47 Beiträge, 574 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
Java ist ne verrückte Sprache....
05.11.2006, 22:52:30
Ausgehend von der Idee, daß Java ja eine kompilierte Sprache ist, macht der Compiler in P-Code recht wenig...

Ich bin mal über http://www.microjava.com/articles/techtalk/optimization?PageNo=4  gestolpert - Optimierungstechniken für J2ME (bzw. Java generell).

Was ich wirklich krass finde:
1.) Loop unrolling... Muß der Coder selbst machen, der Compiler kriegt das net hin ???
2.) >> ist schneller als ne Division ? Warum um Himmels willen... Ich meine, klar auf Assemblerebene und von mir aus auf P-Code-Ebene... Nur jeder normale C-Compiler wandelt sowas um, warum net javac ?
3.) Das IMHO allerkrasseste:

  public static final int STATE_RUNNING = 1000;
  public static final int STATE_JUMPING = 2000;
  public static final int STATE_SHOOTING = 3000;
  switch ( n ) {
    case STATE_RUNNING:
      doRun();
    case STATE_JUMPING:
      doJump();
    case STATE_SHOOTING:
      doShoot();
  }

There's nothing wrong with this, and the int constants are nice and far apart, in case we might want to stick another constant in between RUNNING and JUMPING, like STATE_DUCKING = 2500. But apparently switch statements can be compiled into one of two byte codes, and the faster of the two is used if the ints used are close together, so this would be better:

  public static final int STATE_RUNNING = 1;
  public static final int STATE_JUMPING = 2;
  public static final int STATE_SHOOTING = 3;


Was ist denn das für eine schräge Sprache ? Ich mein,alles sind ints, und switch()-Statements sind unterschiedlich schnell, je nachdem ob die Werte näher sind ???

Man muß sich direkt mal Java-PCode-Assembler ansehen, der muß ja krank sein ;-)

Antworten PM Alle Chronologisch
 
Melden nicht möglich
.  Re: Java ist ne verrückte Sprache....  (Wizard51 am 05.11.2006, 22:59:03)
.. Vom Autor zurückgezogen oder Autor hat seine Registrierung nicht bestätigt  (leave_my_name_out am 06.11.2006, 11:19:18)
.  Re: Java ist ne verrückte Sprache....  (nergal am 06.11.2006, 06:31:48)
...  Re(3): Java ist ne verrückte Sprache....  (nergal am 06.11.2006, 08:40:21)
. Vom Autor zurückgezogen oder Autor hat seine Registrierung nicht bestätigt  (Nagelfar am 06.11.2006, 09:53:01)
... Vom Autor zurückgezogen oder Autor hat seine Registrierung nicht bestätigt  (Nagelfar am 06.11.2006, 10:52:18)
..... Vom Autor zurückgezogen oder Autor hat seine Registrierung nicht bestätigt  (Nagelfar am 06.11.2006, 11:05:41)
....... Vom Autor zurückgezogen oder Autor hat seine Registrierung nicht bestätigt  (Nagelfar am 06.11.2006, 11:18:29)
.........  Re(9): Java ist ne verrückte Sprache....  (mko am 06.11.2006, 11:31:18)
......... Vom Autor zurückgezogen oder Autor hat seine Registrierung nicht bestätigt  (Nagelfar am 06.11.2006, 11:35:11)
........... Vom Autor zurückgezogen oder Autor hat seine Registrierung nicht bestätigt  (Nagelfar am 06.11.2006, 12:11:00)
............. Vom Autor zurückgezogen oder Autor hat seine Registrierung nicht bestätigt  (Nagelfar am 06.11.2006, 12:33:23)
.  Re: Java ist ne verrückte Sprache....  (adhoc am 12.11.2006, 20:25:02)
...  Re(3): Java ist ne verrückte Sprache....  (adhoc am 12.11.2006, 20:37:26)
...  Re(3): Java ist ne verrückte Sprache....  (adhoc am 12.11.2006, 21:30:13)
.....  Re(5): Java ist ne verrückte Sprache....  (adhoc am 13.11.2006, 10:01:31)
.......  Re(7): Java ist ne verrückte Sprache....  (adhoc am 13.11.2006, 12:15:50)
......... Vom Autor zurückgezogen oder Autor hat seine Registrierung nicht bestätigt  (Nagelfar am 13.11.2006, 14:39:05)
........... Vom Autor zurückgezogen oder Autor hat seine Registrierung nicht bestätigt  (Nagelfar am 13.11.2006, 15:42:00)
............. Vom Autor zurückgezogen oder Autor hat seine Registrierung nicht bestätigt  (Nagelfar am 14.11.2006, 11:34:36)
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung