- 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 -