- p°edchozφ Φlßnek - nßsledujφcφ Φlßnek - obsah -

LinuxovΘ noviny Leden 1998

Java aneb SUN dostal Billa

Marek Fikera, 6. ledna 1998

12. prosince ji╛ tomu byly dva roky co Sun Microsystems, zve°ejnil Beta 2 verzi JDK (Java Developer's Kit) a zanedlouho Randy Chapman portoval JDK 1.0 pro Linux.

Java je programovacφ jazyk vychßzejφcφ z C/C++, ale je na rozdφl od svΘho univerzßlnφho vzoru urΦena p°edev╣φm pro Internet a sφt∞ zalo╛enΘ na jeho principech. Samoz°ejm∞ dajφ se v nφ programovat b∞╛nΘ aplikace, ale nedostanete takovΘ v²sledky, jako kdy╛ onen program napφ╣ete v Perlu nebo C. To je ov╣em nutnß da≥ za "platformovou nezßvislost". Ona zmi≥ovanß platformovß nezßvislost spoΦφvß v tom, ╛e je to jazyk interpretovan². Interpret se naz²vß Java Virtual Machine (VM).

Nynφ se podφvßme na n∞kolik zßkladnφch implementacφ Javy pro Linux. KonkrΘtn∞ na JDK, Guavac a Kaffe. V╣echny tyto implementace podporujφ verzi Javy kompatibilnφ s JDK 1.1.3. Ale tato verze nenφ bohu╛el poslednφ, poslednφ je JDK 1.2 Beta 2, snad se i my brzy doΦkßme.

  • JDK obsahuje p°ekladaΦ javac, interpreter java, prohlφ╛eΦ aplet∙ appletviewer, dokumentaΦnφ prost°edek javadoc, ladφcφ prost°edek jdb a spoustu dal╣φch utilitek. Za zmφnku v╣ak stojφ to, ╛e p°ekladaΦ je takΘ napsßn v Jav∞, narozdφl od Guavac. To mß v╣ak za nßsledek, ╛e je nejpomalej╣φ. Podrobn∞j╣φ informace naleznete na adrese http://www.blackdown.org/java-linux.html.

  • Guavac je pouze p°ekladaΦ. Co╛ znaΦφ, ╛e vßm nebude staΦit pro pou╛φvßnφ Javy. Jste pouze schopni p°elo╛it zdrojov² k≤d do nezßvislΘho k≤du (bytecode), ale ji╛ nejste schopni si v²slednou aplikaci spustit. Vφce informacφ naleznete na adrese http://http.cs.berkeley.edu/~engberg/guavac/.

  • Kaffe obsahuje p°ekladaΦ javac, interpreter java a dokumentaΦnφ prost°edek javadoc. Kaffe se li╣φ od JDK zm∞n∞nou VM a podporou JIT (Just-In-Time). JIT znamenß konverzi z abstraktnφho k≤du (bytecode) do nativnφho k≤du. Aplikace p°elo╛enΘ pomocφ JIT b∞╛φ zhruba 5-krßt rychleji ne╛ aplikace p°elo╛enΘ klasickou cestou, tedy bez JIT. Kaffe ov╣em pro sv∙j b∞h pot°ebuje soubor classes.zip ze standardnφho JDK. Bli╛╣φ informace naleznete na adrese http://www.kaffe.org/.

Na zßv∞r malinkΘ srovnßnφ Guavac a Kaffe. JDK nemß smysl zahrnovat, pon∞vad╛ dosahuje obdobn²ch v²sledk∙ jako Kaffe.

Testovacφ t°φda je na v²pisu Testovacφ t°φda.

 public class Test {
 public static void main(String argv[]) {
  System.out.println("Hello World");
  }
 }

V²pis 4: Testovacφ t°φda

Velikost po p°ekladu zdrojovΘho textu (103 byt∙) pomocφ Guavac byla 405 byt∙, po p°ekladu pomocφ Kaffe byla velikost 459 byt∙. P°eklad pomocφ Kaffe s parametrem -O dßval velikost 413 byt∙.

Guavac pot°eboval na kompilaci 3 sekundy (41% CPU), zatφmco Kaffe 12 sekund (99% CPU).

Vφce o Jav∞ se m∙╛ete dozv∞d∞t na adrese http://www.javasoft.com nebo http://www.blackdown.org/java-linux.html. *


- p°edchozφ Φlßnek - nßsledujφcφ Φlßnek - obsah -