Volný "seriál" na téma Borland JBuilder má na stránkách PC WORLDu
další pokračování. Dnešní díl vám představí největšího člena
rodiny - verzi Client/Server.
České zastoupení Borlandu vytrvalo v započaté cestě poskytovat
k recenzím i produkty nejvyšší cenové kategorie. Je to logické --
u balíků, jejichž cena koketuje s hranicí 100 000 Kč, případně ji
nechává daleko za sebou, bývá váhání kupujících podstatně větší
a každé zrnko přispívající na misku "Pro" se počítá. A takovým
zrnkem mohou být informace získané z recenzí.
Balík JBuilder C/S opravdu patří do cenové extraligy (samozřejmě
myšleno v oblasti osobních počítačů). Určité zmínky o tom, co je
v něm tak drahého, byly již v minulých "dílech", leč nemohly být
úplné, protože se jeho vydání opozdilo za dvěma menšími bratříčky
a k dispozici byly pouze tiskové informace a poznatky získané
z beta*verzí. Způsobeno to bylo nevyjasněností některých otázek
okolo specifikací jazyka JAVA a implementací nových technologií,
o nichž bude zmínka za chviličku.
Na úvod si dovolím malinkou odbočku, která by měla odpovědět na
jednu často kladenou otázku: k čemu jsou Borlandu dva produkty
pro vývoj internetových aplikací -- IntraBuilder a JBuilder?
Odpověď je jednoduchá -- každý z nich je určen pro jinou stranu
"drátu" mezi internetovým serverem a klientem. IntraBuilder je
nástroj pro vývoj javascriptových serverů vytvářejících dynamické
webové aplikace, se kterými pracují klienti pomocí apletů
napsaných v JBuilderu. Zmiňuji se o tom z důvodu přítomnosti
zkušební verze IntraBuilderu na instalačním CD-ROMu. Ale teď už
zpátky na klientskou stranu "drátu".
Nadstandardní výbavu JBuilderu C/S si můžeme rozdělit do dvou
kategorií: velká rozšíření a malá vylepšení. Zahajme tou větší:
Velká rozšíření
zahrnují vše, co není v levnějších verzích. Začnu technologickými
novinkami. Asi nejzajímavější z nich je implementace technologie
CORBA. Za tím účelem se vydal Borland na nákupy a vložil do svého
košíku firmu Visigenic jakožto špičkového specialistu na tuto
technologii. Recenzovaná verze JBuilderu obsahovala beta-verzi
produktu VisiBroker for JAVA 3.0, což je JAVA implementace
specifikace CORBA verze 2.0. Pro usnadnění vývojářova života
přidali autoři několik průvodců, podpůrných nástrojů a ukázkové
aplikace, takže můžete začít pracovat bez velkých cavyků.
Další technologie, umožňující vyvolávat metody objektů na jiných
počítačích, se nazývá RMI neboli Remote Method Invocation. Na
rozdíl od technologie CORBA je RMI vázána na jazyk JAVA. Je
součástí JDK 1.1 a její obsluha je jednodušší, protože jsou JAVA
stubs a skeletons generovány přímo z obslužného dialogu (u
technologie CORBA je k tomu zapotřebí podstatně víc kroků).
Silným nástrojem obsaženým v balíku JBuilder je Borland
DataGateway, zprostředkující JAVA vývojářům propojení na datové
jádro BDE podle standardů JDBC. Součástí verze C/S je provedení
Enterprise pracující jak s běžnými lokálními tabulkami formátu
Paradox, dBase, FoxPro, Access (ten přes ODBC), tak i s velkými
SQL servery Oracle, Sybase, DB2, Microsoft SQL Server, Informix
a Borland InterBase. Výsadní postavení samozřejmě zastává
InterBase, zastoupená v balíku čtyřuživatelskými servery pro
Windows 95 a Windows NT, lokální jednouživatelskou testovací
verzí a speciálním plně javovským ovladačem InterClient.
Následující sada nástrojů je částečně známá i z jiných balíků
C/S firmy Borland. Práci s dotazy SQL vám usnadní SQL Explorer
zobrazující strukturu a parametry dotazů, přenosy dat mezi
databázemi zase Data Migration Wizard. Query Builder pomůže
s výstavbou dotazů metodou vizuálního návrhu, JDBC Monitor dovolí
sledování aktivity databázových ovladačů během vývoje, ladění
a provozování aplikací. Týmovou spolupráci na projektech můžete
řídit pomocí programu PVCS Version Manager, klientské testování
aplikací pak provádět v prostředí prohlížečů Netscape
Communicator a Microsoft Explorer.
Malá vylepšení
Do této kategorie jsem zařadil sadu inovací vlastností a funkcí,
které najdete i v menších vydáních JBuilderu. Vylepšeno bylo
chování debuggeru (zejména horké klávesy byly přizpůsobeny
konvencím ostatních produktů Borlandu), prostředí návrháře
a zadávání parametrů do SQL dotazů a uložených procedur. Novinky
najdete v knihovně komponent JavaBeans: například všechny
komponenty mají vlastnosti Rollover, určující chování při
přesouvání myši přes objekt, vývojáři přidali nové ovládací
prvky, například průhledný obrázek nebo dialog pro zadání řetězce
a několik komponent pro práci s dotazy a uloženými procedurami.
Z pohledu uživatele představuje JBuilder C/S ještě většího
hardwarového nenasytu než jeho menší bratříčci. (Těžko však
předpokládat, že balík této cenové kategorie bude chtít někdo
smysluplně provozovat na své domácí 386.) Stále si zachoval
pozoruhodný poměr 1:1 mezi dokumentací a ostatními soubory,
oproti ostatním verzím je však podstatně větší část dokumentace
v papírové podobě. Svými technologickými možnostmi a schopnostmi
představuje naprostou špičku ve svém oboru. Jen těžko budete
hledat lepší nástroj.
JBuilder Client/Server
K recenzi poskytla firma:
Borland, s.r.o.
XXX
XXX
Cena: XXXX
Pro vaši firmu
Objektivně vzato - JBuilder C/S najde uplatnění ve vývojových
odděleních větších firem či specialistů na Internet. Nicméně
představa volně distribuované aplikace, jejíž vysoce
sofistikované chování zajistí na straně klienta několik malinkých
modulů rozšiřujících schopnosti běžného internetového prohlížeče,
je velice lákavá i pro subjekty menších rozměrů. Zdánlivě velká
investice do vývojového prostředku a vybavení serveru se totiž
velice záhy kompenzuje na nákladech na stanice, kterých je
samozřejmě nesrovnatelně větší počet. Jejich výpočetní výkon
a kapacita nemusí být dimenzovány na vykonávání náročných
operací, jež za ně provede kvalitní server. Nezanedbatelná může
být i úspora nákladů spojených s údržbou a distribucí nových
verzí aplikací, protože se provádí na jediném místě, na serveru.
Pro zájemce o podobný počin pak představuje pár JBuilder --
InterBuilder ideální prostředí pro tvorbu dynamických aplikací
pro Internet.
Slovníček pojmů
dnes věnujeme pojmům z oblasti distribuovaných objektů:
CORBA - Common Object Request Broker Architecture, technologie
používaná distribuovanými objekty, tedy objekty vzdáleně
přístupnými. To znamená, že distribuované objekty mohou být
používány stejně jako objekty běžné, ale jakýmkoliv počítačem
sítě nezávisle na svém fyzickém umístění. CORBA obstarává
mechanismy, jimiž objekty předávají požadavky a přijímají
odpovědi.
CORBA ORB - Object Request Broker, aplikační rámec
zprostředkující vzájemné působení objektů, které mohou být
napsány v různých jazycích, mohou běžet na různých počítačích
a pracovat v heterogenním prostředí, tedy pod různými operačními
systémy.
JAVA Stub - JAVA kořen, metoda zapouzdřující náhradní objekt na
straně klienta.
JAVA Skeleton - JAVA jádro, překládá informaci přijatou od
kořene a předává ji skutečnému objektu provedením vzdálené
metody. Existuje na straně serveru.
Klientský program tedy může pracovat s objekty, ale nemusí mít
jejich kopie. Sdílené rozhraní mezi klientem a serverem řekne
klientovi vše, co může s objektem dělat. Všechna rozhraní objektů
musí rozšiřovat rozhraní RMI definované v balíku java.rmi . Podobně
musí také implementace tříd, provádějící metody popsané vzdáleným
rozhraním, rozšiřovat třídy RemoteServer z balíku
java.rmi.server. Proces zakódování parametrů kořene do podoby
přenositelné přes síť se nazývá Marshalling.