Borland JBuilder 3.5
Na Javu v Javě
Popularita jazyka Java už několik let prudce stoupá, a tak se nelze divit, že se pro něj na trhu objevují stále nové vývojové nástroje. V tomto článku se podíváme na jeden z nich, Borland JBuilder 3.5 od firmy Inprise.

Podobně jako mnohé jiné vývojové nástroje se i JBuilder 3.5 dodává ve třech provedeních. To základní se nazývá poněkud netradičně Foundation, je de facto zdarma a obsahuje vlastní vývojové prostředí (IDE) a nezbytné ladicí, vývojové a podpůrné nástroje. Provedení Professional obsahuje ještě nástroje pro vývoj databázových aplikací, a konečně provedení Enterprise je navíc bohatší o prostředky pro vývoj distribuovaných aplikací a pro podporu týmové práce. Tento článek je založen na zkušenostech s variantou Enterprise pod Windows NT a 95.

Nejdůležitější novinky
Asi nejzávažnější novinkou, kterou verze 3.5 přinesla, je vývojové prostředí vytvořené zcela v Javě. To zaručuje přenositelnost do různých platforem; JBuilder 3.5 běží pod operačními systémy MS Windows, Sun Solaris a Linux – a vlastně může běžet v libovolném prostředí, ve kterém je k dispozici Java 2. Nelze také pominout novou verzi VisiBrokeru, označenou číslem 4 a dodávanou s provedením Enterprise. 
Tyto novinky mají ovšem i svou stinnou stránku v podobě vyšších nároků na počítač, především na jeho paměť.

Vývojové prostředí
Jak už bylo řečeno, integrované vývojové prostředí (IDE) JBuilderu bylo vytvořeno zcela v Javě, čemuž odpovídá i “javovský” vzhled oken. Jinou novinkou IDE je možnost tisku zdrojového textu z prostředí; tiskový dialog umožňuje i výstup do HTML souboru s barevně zvýrazněnou syntaxí, což může usnadnit vytváření projektové dokumentace. Nástrojový panel je nyní plně nastavitelný. 
Jinak došlo jen k několika nepříliš významným změnám — např. paleta s komponentami JavaBeans již není vedle nástrojového panelu, ale přesunula se do horní části “pracovního panelu” na kartu Design (obr. 1). To znamená, že ji je vidět pouze v režimu vizuálního návrhu, nikoli v režimu nápovědy nebo práce se zdrojovým kódem (kdy stejně nemá význam).
Ostatní vlastnosti IDE zůstaly bez větších změn, jen je toto prostředí o něco pomalejší než v předchozí verzi (alespoň pod Windows NT 4 na počítači se 128 MB RAM) a některé nápisy na tlačítkách se občas z nejasných důvodů nezobrazí celé (obr. 2).
Součástí IDE je, podobně jako v předchozí verzi, řada průvodců neboli šamanů, kteří usnadňují rutinní úkoly, jako je vytváření projektů, koster aplikací, tříd, apletů atd. Novinkou provedení Professional a Enterprise je průvodce implementací javovského rozhraní.

Java
JBuilder 3.5 pracuje s jazykem Java 2 (JDK 1.2.2). Podporuje samozřejmě vytváření komponent JavaBeans a řada těchto komponent se s JBuilderem dodává — jejich množství se liší podle toho, zda máme provedení Foundation, nebo některé dražší. Součástí instalace je samozřejmě také knihovna JFC/Swing. 
JBuilder 3.5 Enterprise využívá platformu Java 2 — Enterprise Edition podle specifikace Sun Microsystems. Tato specifikace připojuje k Javě podporu komponent Enterprise JavaBeans (EJB), rozhraní pro tvorbu servletů a technologii JavaServer Pages.
Vedle toho můžeme v JBuilderu 3.5 pracovat i s Javou 1.1, pokud i ji svém počítači máme nainstalovánu.

Čeština
Svérázným problémem JBuilderu 3.5, nebo přesněji Javy 2, je podpora neanglických prostředí. I když je řada programátorů přesvědčena, že “rozumný” program mluví pouze anglicky, skutečnost je jiná: řadový uživatel počítače se přece kvůli programátorské povýšenosti (nebo lenosti?) nebude učit anglicky. 
S podporou češtiny je na tom JBuilder 3.5 přece jen lépe než jeho předchůdce, JBuilder 3. (Přesněji řečeno, současná verze JDK je v tomto ohledu lepší než verze použitá v JBuilderu 3.) Jak známo, Java pracuje pouze s abstraktními fonty a jejich přiřazení fontům dostupným v dané implementaci popisují soubory font.properties.xx, kde xx vyjadřuje lokální nastavení (pro češtinu je to cz, pro slovenštinu sk). Podobně jako předchozí verze, i JBuilder 3.5 obsahuje pouze devět těchto souborů, z toho tři pro čínštinu, po jednom pro thajštinu, korejštinu a jiné užitečné jazyky. Čeština ani slovenština mezi nimi pochopitelně není... 
Nicméně pod Windows NT 4.0 a Windows 2000 dokáže JBuilder 3.5 převzít lokální nastavení z operačního systému a čeština v IDE i v aplikacích funguje, alespoň ve většině fontů. Pod Windows 98 můžeme použít soubor font.properties.cz, který lze stáhnout z webové stránky českého zastoupení firmy Inprise; toto řešení však používá pouze písmo Tahoma. Ovšem pod Windows 95 dopadne známá věta o žluťoučkém koni, který příšerně úpí ďábelské ódy, stále neslavně (obr. 3) – některá písmena s háčky a čárkami se prostě nezobrazí; zajímavé ale je, že v titulku okna a v editoru zdrojového textu v IDE jsou české znaky správně. V inspektoru objektů budou zase znaky s diakritickými znaménky nahrazeny obdélníčky. (V zájmu objektivity však přiznejme, že JBuilder vlastně pro Windows 95 není určen.)

Technologie
Součástí JBuilderu 3.5 v provedení Foundation je knihovna JFC/Swing, která obsahuje komponenty pro vytváření grafického uživatelského rozhraní programu, apletů atd. Provedení Professional navíc umožňuje vytvářet servlety, distribuované aplikace založené na RMI (Remote Method Invocation) a databázové aplikace využívající JDBC nebo ODBC. JBuilder 3.5 umožňuje používat všechny významné komerční databázové servery. 
Od provedení Professional je součástí dodávky také JDataStore, objektově-relační databázový systém napsaný v Javě a nabízející vývojové prostředí. Ve srovnání s předchozí verzí je zde několik novinek — JDataStore např. nyní podporuje jednoznačný neprázdný primární klíč. Transakce, které pouze čtou data z databáze, nemusejí zamykat záznamy a pro usnadnění práce s JDataStore je k dispozici JDataStore Explorer.
Provedení Enterprise navíc podporuje tvorbu distribuovaných aplikací založených na EJB, vytváření JavaServer Pages a tvorbu distribuovaných aplikací založených na standardu CORBA 2.3. Součástí dodávky je VisiBroker 4, který obsahuje jak běhovou podporu pro distribuované aplikace, tak i potřebné vývojové nástroje. Ve srovnání s předchozí verzí JBuilderu, která obsahovala VisiBroker 3.4, je zde poměrně významná novinka, která se týká tzv. objektového adaptéru, součásti distribuované aplikace, která se stará o komunikaci mezi objektem (serverem) a objektovou sběrnicí (ORB). Předchozí verze VisiBrokeru implementovala BOA (Basic Object Adapter — základní objektový adaptér, který nebyl plně přenositelný do jiných prostředí). Současná verze implementuje POA (P zde znamená portable, tedy přenositelný) a měla by podstatným způsobem zlepšovat škálovatelnost výsledných aplikací.
Překladač java2iiop umožňuje vytvářet “stuby” a skeletony na základě rozhraní popsaných v Javě. Nová je i podpora OBV (Objects By Value), jež umožňuje předávat mezi klientem a serverem libovolně složitá data.

Další nástroje
Spolu s JBuilderem 3.5 Enterprise dostaneme na samostatném CD nově také Inprise Application Server 4. Tento aplikační server představuje sadu služeb a nástrojů, které umožňují vytvářet, šířit a spravovat webové a jiné distribuované aplikace. Jeho základem je ORB (objektová sběrnice) z VisiBrokeru pro Javu verze 4. Z novinek, které se týkají tohoto serveru, jmenujme například úplnou podporu všech druhů EJB, stavových i bezstavových komponent, entitních komponent s perzistencí řízenou kontejnerem i samotnými komponentami.
Dále se s tímto provedením JBuilderu 3.5 dodává plnohodnotný databázový server InterBase 5 — Multi-platform Suite. Lze jej instalovat pod operačními systémy Windows 95/98/NT, Linux a Solaris 2.5 a 2.6.
Na dalších dvou CD obsažených v krabici najdeme Delphi 4 Professional a C++Builder 4 Professional.
JBuilder 3.5 podporuje Open Tools API, rozhraní, které umožňuje snadnou integraci dalších nástrojů a šamanů do IDE. (Ve skutečnosti jsou všichni průvodci v JBuilderu 3.5 vytvořeni jako doplňky prostřednictvím tohoto rozhraní.)

Ladění
Ladicí nástroje jsou integrovány do vývojového prostředí JBuilderu. Jsou založeny na standardu Java Platform Debugger Architecture JDI API a umožňují krokování, sledování hodnot proměnných (mj. i v bublině u kurzoru myši), používání zarážek (breakpointů) apod. Podobně jako předchozí verze podporuje JBuilder 3.5 ladění v libovolných verzích JDK. Umožňuje také souběžné ladění několika procesů, ladění procesů na jiných počítačích, a dokonce i na jiných platformách.
Od verze Professional jsou k dispozici kromě tradičních zarážek vázaných na řádku zdrojového textu také zarážky vázané na použití určité třídy, na použití určité metody, na vznik výjimky a na použití pole. Pro každou ze zarážek můžeme předepsat, zda se má zastavit běh programu, nebo zda se má pouze vypsat zpráva do protokolu (log).
Vedle toho je k dispozici automatická detekce uváznutí (deadlock) a možnost připojit se k běžícímu procesu (v provedení Enterprise).

Požadavky
Chcete-li provozovat JBuilder 3.5 pod Windows, potřebujete PC s procesorem Intel Pentium II/233 MHz nebo lepším, MS Windows 98 nebo NT 4.0 a vyšší. I když dokumentace neuvádí Windows 95, lze pod nimi JBuilder nainstalovat a provozovat, narazíme ale mj. na zmíněné problémy s češtinou.
Pro Linux jsou hardwarové požadavky stejné a doporučená konfigurace je RedHat Linux 6.0 nebo 6.1. Pro Solaris je třeba UltraSPARC II a operační systém Solaris 2.6 nebo Solaris 7 (2.7).
V dokumentaci se praví, že počítač by měl být vybaven nejméně 128 MB RAM. Tato hodnota je označena jako “doporučené minimum” – sám jsem při ní (pod Windows NT 4.0) JBuilder 3.5 testoval, ale obávám se, že pro skutečný vývoj aplikací je třeba podstatně větší paměť, neboť při této hodnotě byl program poměrně líný.
Další požadavky JBuilderu jsou již víceméně obvyklé: 150 MB místa na pevném disku, mechanika CD-ROM, grafická karta SVGA nebo vyšší s rozlišením alespoň 800  600 bodů a 256 barvami a myš nebo jiné polohovací zařízení.

Instalace
Novinkou nepříliš příjemnou, ale vzhledem ke koncepci celého produktu zřejmě nezbytnou, je instalace JBuilderu po částech. Nejprve si musíme instalovat JBuilder 3.5 Foundation, onu základní verzi dostupnou prakticky zdarma (na levném CD nebo z internetu). K ní pak musíme samostatně doinstalovat nadstavbu (Professional nebo Enterprise). Dalším krokem je samostatná instalace nápovědy k JBuilderu a nakonec musíme nainstalovat nápovědu pro Open Tools API. Pak přijdou na řadu instalace dalších nástrojů... 
Jinak je instalace bez problémů.

Co k tomu dodat
Nová verze JBuilderu má číslo 3.5, a jak už to u neceločíselných verzí bývá, jde především o drobná vylepšení předchozí verze. V tomto případě to ovšem nejsou jen vylepšení zanedbatelná, neboť přepsání vývojového prostředí do čisté Javy přineslo možnost používání tohoto nástroje i v jiných prostředích než jen pod Windows na PC. Cenou za to jsou vyšší nároky na počítač a pomalejší běh. Ostatní změny jsou sice příjemné, nejsou však zásadní. Našince jistě potěší i vyřešení problému s češtinou pod Windows NT.
Miroslav Virius