Čtyři integrovaná vývojová prostředí pro Javu

Po desetiletí snili programátoři o vývojových prostředích, v nichž by mohly silné integrované nástroje osvědčit sv...


Po desetiletí snili programátoři o vývojových prostředích, v nichž by mohly
silné integrované nástroje osvědčit svou ohromnou produktivitu. První pokročilé
prostředí tohoto druhu se objevilo ve společenství produktů Unix začátkem 90.
let. Avšak neschopnost tehdejších hardwarových platforem podporovat výpočetní
požadavky takových složitých produktů je odsoudila k předčasné kapitulaci. Dnes
lze na vývojářských pracovních stanicích, které se honosí 3GHz procesory a 1 GB
RAM, provozovat skutečně mohutná prostředí (jako například Visual Studio .Net
nebo Eclipse 3.0), aniž by přetěžovala hardware.

V aktuálním Testu týdne vám nabídneme srovnání čtyř IDE (Integrated Development
Enviroment; a nástroje, které je doplňují) od společností Borland, IBM, Oracle a
Sun, určených pro vývoj podnikových aplikací v Javě. Je zajímavé, že každý z
těchto produktů využívá různé IDE. V případě výrobku IBM jde o volně dostupné
open source IDE Eclipse 3.0, jež se těší všeobecnému přijetí ze strany vývojářů
programujících v Javě. Produkt společnosti Sun je založen na konkurenční open
source IDE platformě NetBeans a produkty firem Oracle a Borland jsou postaveny
na proprietárních uživatelských rozhraních. Kolekce nástrojů sestavených okolo
zmíněných základů se významně liší od dodavatele k dodavateli. K testu jsme
přitom vybrali ty nástroje, které zahrnovaly modelování, podstatnou integraci
webu a podporu J2EE tedy důležité prvky každé podnikové Java platformy. Všechna
čtyři IDE jsou svým způsobem působivá, což dokládá, jak daleko se během několika
posledních let tento obor dostal.

Borland JBuilder 2005 Enterprise Edition
Integrované vývojové prostředí JBuilderu bylo prvním modulárním IDE, které
podporovalo Javu. Jeho struktura je dobře zdokumentovaná a návod pro psaní
modulů (plug-inů) všeobecně známý; navíc mnoho výrobců třetích stran a vývojářů
open source aplikací vytvořilo pro tuto platformu nástroje pro psaní modulů.
JBuilder existuje ve třech verzích. Personal Edition lze volně stáhnout a jde o
základní IDE s několika dalšími nástroji, jakými je například návrhář grafického
prostředí nebo integrovaný JUnit framework. Druhý balík Developer Edition
přidává mnoho vlastností, zejména XML a podporu webu včetně servletů, JSP a JSF
(JavaServer Faces). A nakonec je tu verze Enterprise Edition, která zahrnuje
webové služby, J2EE, podporu CORBA a UML diagramů. Předmětem naší recenze byla
verze JBuilder Enterprise Edition.
Díky vyspělosti IDE patří prostředí JBuilderu k nejpropracovanějším ze všech
čtyř zde uvedených balíků: navigace v něm je intuitivní, a pokud během úlohy
někde kliknete myší, nepřihodí se vám, že by na vás vykoukla slepá nebo nečekaná
dialogová okna.
Pokud se někde nebo v něčem ztratíte, je vám k dispozici vynikající systém
nápovědy nejlepší ze čtyř zde recenzovaných produktů. A vývojářům, kteří rádi
začínají studiem tutoriálů, nabízí Borland mnoho jasných, dobře navržených
možností. Podpora vlastností v JBuilderu, které se očekávají od špičkového
produktu IDE podnikové kategorie, je solidní, dobře promyšlená a praktická.
Jedinou výjimku tvoří těžkopádné generování build souborů pro Ant (open source
obdoba make utility, běžně používaná v Javě). Pokud odhlédneme od tohoto
podivného nedostatku, je potěšením toto prostředí používat.
Mimo IDE funkčnost podporuje JBuilder 2005 některé ojedinělé technologie, jako
například integraci s CORBA, skrytí kódu a bezpečnostní analýzu kódu
prostřednictvím přibaleného modulu firmy Fortify.
JBuilder také nabízí pozoruhodně kompletní podporu XML a jeho četných odvozenin,
kvalitní HTML editor, mnoho užitečných nástrojů pro vývoj a testování webových
služeb, a podporu J2ME a WAPu.
Modelování je ale slabinou JBuilderu, když podporuje jen dva UML diagramy. Tento
nedostatek pramení z toho, že společnost Borland vám doporučí dokoupit si
hi-endový balík Together, pokud potřebujete robustní modelování. Začátkem března
zavedla firma Borland prodejní model, v rámci něhož kombinuje Together s
produktem JBuilder a dalšími svými nástroji podle potřeb vývojářů. Tato účelová
sada produktů, která se nazývá Core SDP, bude od nynějška představovat základ
nabídek podnikových řešení firmy Borland.
A ještě něco nakonec: v březnu na každoroční Eclipse user conference společnost
Borland oznámila, že bude dodávat sadu modulů pro Eclipse, jež budou duplikovat
funkce JBuillderu 2005. Jak dlouho bude firma podporovat dvě grafická rozhraní k
témuž produktu, se dá těžko odhadnout, ale v tomto prohlášení se dále tvrdí, že
JBuilder 2005 možná přejde na Eclipse. Pokud k tomu dojde, zřekne se společnost
Borland úžasného IDE, které doplnila působivými funkcemi.

IBM Rational Software Architect 6.0
Nová řada Rational Software od IBM nahrazuje rodinu produktů WebSphere Studio.
RSA (Rational Software Architect) 6.0 je bez ohledu na číslo verze první
generací, uváděnou pod tímto novým jménem. Z balíků, které jsme testovali, mělo
přitom RSA nejširší záběr.
IBM používá stejně účelový prodejní model jako Borland. RSA 6.0 je postaveno na
několika vrstvách. Vespod je Rational Web Developer, který vynechává podstatnou
část modelovacích schopností, a dále to je Rational Application Developer, jenž
postrádá schopnosti pro návrh designu webu (web-facing design). Zcela vespod se
nachází Eclipse 3.0, volně dostupné IDE orientované na Javu, které si získává
ohromnou popularitu.
Bohužel většina nedostatků RSA má kořeny právě v naposled zmíněné spodní vrstvě.
Za prvé Eclipse nemá intuitivní rozhraní. Pokud s ním nemáte dlouhodobé
zkušenosti, narazíte na nepochopitelná dialogová okna nebo na neočekávané cesty.
IBM vám sice úlohu zjednoduší pomocí ohromných tutoriálů, ale navigace v tomto
IDE je i tak složitější než v JBuilderu 2005 nebo JDeveloperu od Oraclu.
Rozhraní RSA je také citelně pomalejší než to u obou zmíněných produktů. Sice
uživatele neotráví úplně, ale budete ho vnímat jako líné, postrádající ohled na
ostatní produkty, zejména při přepínání pohledů na projekt (například při
přechodu od návrhu k psaní kódu).
Pomalost je částečně způsobena množstvím softwaru, kterým IBM "opentlila"
základnu Eclipse jedná se přitom o pozoruhodnou sbírku podnikově orientovaných
aplikací o rozsahu 14 CD. Patří sem testovací prostředí IBM WebSphere
Application Server, celý softwarový balík pro vývoj webových portálů, špičkové
modelovací nástroje a nástroje pro tvorbu designu.
Modelovací nástroje podporují až devět UML diagramů to je více než u produktů
Borland a Oracle. Je možné provádět jejich analýzu a zjišťovat, zda obsahují
určité vzory, a také to, co u společnosti IBM nazývají anti-vzory, tj. nešťastné
prvky programového návrhu. Špatně navržené třídy se například objeví s
vysvětlením, jaké zásady návrhu porušují včetně označení toho, co je třeba
opravit.
Pokud se tyto nástroje zkombinují s analýzou kódu podle pravidel, může to pomoci
architektům zjistit, jsou-li projekty správně implementovány a zda vyhovují
návrhu a místním požadavkům.
Technologií pro vývoj webového rozhraní v Rationalu je v daný okamžik JSF
technologie, která zjednodušuje implementaci. Nástroje RSA obsahují WYSIWYG
editor pro JSF podpořený SDO (Service Data Objects) pro databázová rozhraní.
Vedle plné podpory Javy podporuje RSA částečně i C/C++. Modelovací nástroje
mohou transformovat do C++ a různé nástroje mohou analyzovat zdrojový kód C++.
Nicméně C++ IDE postrádá kompilátor a debugger, které je nutno si opatřit a
instalovat samostatně (k tomuto účelu si můžete stáhnout i kompilátory GNU C++).
Všechno to ale dohromady působí trochu divným a neúplným dojmem.
IBM Rational Software Architect 6.0 je v tomto přehledu výrobkem nejbohatším na
funkce a výše zmíněný doplňkový software jej dále odlišuje od zbytku recenzované
skupiny. Architekti podnikových řešení však v tomto případě budou muset
investovat více času pro zvládnutí jeho rozhraní a nástrojů.

Oracle JDeveloper 10.1.3.
Společnost Oracle se vyvarovala strategie firem Borland i IBM, která spočívá v
nabídkách několika účelových verzí svých nástrojů. Snaží se poskytnout jediný
špičkový produkt za jedinou nízkou cenu. Firma používá své vlastní grafické
rozhraní s intuitivním designem, které vyniká nad ostatními zde popisovanými
IDE.
Toto rozhraní má ještě jinou vlastnost, která se nám velmi líbí: je to jediný
produkt, který je hmatatelně rychlý. Když jsme s JDeveloperem pracovali, měli
jsme pocit, že děláme v citlivém a vysoce svižném prostředí. Zpoždění při
spouštění a použití dalších funkcí nasvědčuje tomu, že jeho výkon je ve
virtuální shodě s JBuilderem od Borlandu, lehce předčí produkt firmy Sun a je
znatelně rychlejší než RSA od IBM. Ale subjektivní pocit z interakce s tímto IDE
je takový, že produkt firmy Oracle se nám jevil jako nejrychlejší.
Sada vlastností JDeveloperu rozdělením odpovídá ostatním balíkům popisovaným v
tomto článku. Řada z nich je ale lépe přístupná, což usnadňuje a zrychluje
práci.
Společnost Oracle také poskytuje některé zajímavé doplňky. Prvním z nich je
nástroj, který vykoná run-time analýzu vašeho kódu. Na základě této analýzy pak
dodává návrhy na modifikaci Java kódu. Například radí, jak optimalizovat příkazy
pro import. Ve verzi pro Windows obsahuje JDeveloper vlastní JVM, která je
optimalizována pro ladění.
Pro práci s webovými službami poskytuje JDeveloper TCP monitor, který umožňuje
vývojářům individuálně prověřovat pakety protokolování (logging) při jejich
přenosu a následně jejich zviditelnění.
Další nástroje softwaru pro vývojáře poskytují špičkovou podporu webovým
službám, mezi něž patří například orchestrace a BPEL (Business Process Execution
Language).
Podstatné omezení JDeveloperu se dotýká modelování v UML (Unified Messaging
Language), kdy tento produkt podporuje jen "velkou čtveřici" typů diagramů: a to
aktivity, třídy, sekvenční a případu užití (use case). JDeveloper podporuje také
několik diagramů, které nepatří do UML, jako diagram pro přechody mezi stránkami
(Struts)a EJB diagramy.
I když není JDeveloper od Oraclu tak bohatý na funkce pro stavbu podnikových
řešení, jako jsou produkty od IBM a Borlandu, poskytuje veškerou funkcionalitu,
kterou si může většina vývojářů přát. A protože je podstatně cenově výhodnější
než produkty obou zmíněných konkurentů, stane se nejspíš pro mnohé vyvoleným
řešením.

Sun Java Studio Enterprise 7
Začátkem 90. let nabízelo jen málo dodavatelů vývojové nástroje v takové
kvalitě, jako firma Sun. Tato společnost byla první, která poskytla řadu
inovací, např. možnost měnit kód během odlaďování (pomocí debuggeru) tak, aby
mohlo dále běžet.
Produkty Sunu ale po nástupu javových vývojových nástrojů ztratily svůj půvab a
nechaly ostatní konkurenty ovládnout trh, který firmě oprávněně patřil. Smyslem
uvedení JSE (Java Studio Enterprise) 7 tedy je opětovné získání pozic na trhu
javových nástrojů. Firma tvrdě zapracovala na vylepšení tohoto produktu a přišla
také s několika jedinečnými funkcemi.
Produkt JSE verze 7 je založen na NetBeans, open source platformě, která soutěží
s konkurenční Eclipse. Nehledě na převahu, kterou Eclipse v současné době má, je
NetBeans solidní platformou schopnou prakticky téhož. NetBeans se rovněž těší
podpoře mnoha vývojářů modulů, i když Eclipse se může pochlubit větším množstvím
realizovaných projektů.
JSE je jedinečný v mnoha ohledech: poskytuje pozoruhodné funkce, které jiné
balíky postrádají, a naopak některé nástroje (jež mají všechny ostatní)
postrádá. Mezi ty rozhodně zajímavé patří možnost spolupráce a tzv. execution
profiling.
Funkce pro spolupráci spojuje všechny vývojáře používající JSE do speciální
konference typu IM (instant messaging), takže si mohou vyměňovat zprávy, kódy a
veškeré druhy artefaktů. Konference podporuje i funkci whiteboardingu, přičemž
pro soukromou a veřejnou konverzaci jsou k dispozici oddělené kanály. Po
počátečním nakonfigurování se funkce spolupráce automaticky vyvolává při
spuštění JSE, jakmile tedy se člen vývojové skupiny dostaví do práce, ihned bude
připojen k týmu.
Další působivou vlastností JSE je jeho simulátor zatížení. Distribuované
aplikace se obvykle obtížně testují; opakované vytvoření zátěže (která má
představovat aktivitu z reálného světa) často vyžaduje komplikovaná nastavení.
Možnost testovat výkonnost v rámci JSE (pomocí obsaženého testování zátěže) tedy
představuje pro vývojáře, kteří pracují na podnikových aplikacích, významné
úspory času.
Přestože Sun není jediný, kdo nabízí rozsáhlou podporu UML diagramů (srovnat se
s ním může jen RSA od IBM), je přesto působivá.
Bohužel zbytek JSE dopadá trochu hůře, když nepodporuje Struts ani JSF; namísto
toho Sun používá WAF (Web Application Framework). To není zrovna lákavá
alternativa, protože v ovládnutí webových rozhraní podnikových aplikací si už
konkuruje příliš mnoho javových technologií.
Na úrovni kódu poskytuje JSE málo možností refaktorování a málo cest pro
zlepšení návrhu kódu. A konečně rozhraní má několik znepokojujících aspektů,
které svědčí o tom, že verze JSE pro Windows je přímo portovaná ze Solarisu.
JSE 7 nabízí některé speciální vlastnosti, které jsou skutečně působivé. Pokud
však zjistíte, že je nepotřebujete, bude pro vás výběr některého z ostatních
produktů nejspíš lepším řešením.

Hodnocení schopností IDE
Jedinou cestou, kterou se můžete při nákupu technologie dát (ať už jde o
hardware nebo software), je znát dobře své potřeby. V případě javových IDE tento
krok budete muset učinit, protože všechny čtyři produkty našeho přehledu jsou
navrženy dobře a jsou také dobře implementovány.
Mezi produkty společnosti Borland a IBM se nabízí přirozené srovnání, protože
vytvářejí dva balíky, které jsou určeny pro velké podnikové projekty se
specifickou podporou pro softwarové architekty. U obou lze v případě nutnosti
doplnit zvláštní funkce pomocí dalších produktů, které jsou v prodeji. Nabídka
funkcí firmy IBM je z nich ta úplnější, rozhraní bylo ale trochu pomalejší a ne
tak intuitivní jako u produktu od Borlandu.
Pokud se nebudou vaše potřeby zrovna týkat úrovně architektů, bude dobrou volbou
JDeveloper od Oraclu, i když i Borland je v tomto ringu vážným soupeřem. Bude-li
pro vás jediným kritériem cena, je nesporným vítězem Oracle. Sun JSE 7 bychom
prozatím doporučili vývojářům, kteří hledají unikátní možnosti spolupráce,
profilování a testování zátěže. Všichni čtyři dodavatelé nabízejí ke stažení
zkušební verze, chcete-li si je před koupí otestovat. Ovšem instalovat,
konfigurovat a testovat tyto produkty není nic jednoduchého. Navrhujeme proto,
abyste začali s produktem od Oraclu, který se instaluje nejsnáze a ve většině
případů vám poskytne to, co byste mohli potřebovat.
Pokud vás pak budou hranice JDeveloperu omezovat, stáhněte si JBuilder od
Borlandu (nezapomeňte, že jde o Enterprise Edition) nebo Rational RSA od IBM.
Těžko si totiž mezi nimi vyberete, pokud je přímo neporovnáte.

Vývojové prostředí
Borland JBuilder 2005 Enterprise Edition
JBuilder 2005 Enterprise Edition velkolepé IDE s podporou mnoha technologií má
vynikající systém nápovědy, pozoruhodně kompletní podporu XML a jeho četných
odvozenin, kvalitní HTML editor, mnoho užitečných nástrojů pro vývoj a testování
webových služeb. Jen škoda, že pokročilé modelování je nutné realizovat
dokoupením jiných nástrojů od firmy Borland.
Jakési čestné uznání patří produktu společnosti Oracle. JDeveloper beze zbytku
naplňuje rčení "za málo peněz hodně muziky". Sice postrádá podporu výkonného
modelování, jde ale o rychlé a intuitivní IDE, které má skoro všechny funkce,
jež by si vývojáři mohli přát.









Komentáře
K tomuto článku není připojena žádná diskuze, nebo byla zakázána.