Roaster 3.0 - vývojové prostředí pro Javu

1. 12. 1997

Sdílet

Když se před dvěma roky začal prudce šplhat vzhůru po žebříčku popularity nový programovací jazyk Java, jeho t...





Když se před dvěma roky začal prudce šplhat vzhůru po žebříčku

popularity nový programovací jazyk Java, jeho tvůrce ve své

nabídce vývojových nástrojů Java Development Kit (JDK) tak

trochu přehlédl macovskou platformu a vlastně ji přehlíží

dodnes. Zatímco uživatelé Windows a mnoha unixových systémů již

dávno mají k dispozici JDK 1.1, na Macu na tuto novou verzi

stále (září 1997) ještě čekáme. To ovšem neznamená, že by Macy

byly pro vývoj produktů v Javě méně vhodné, právě naopak.

Iniciativity se totiž chopili třetí výrobci i samotná firma

Apple a dnes jsou k dispozici vývojové nástroje, které předčí

podobné produkty na všech ostatních počítačových platformách

minimálně v tom, co je Macu vlastní, totiž ve snadném ovládání.

Mezi prvními firmami, které nabídly vývojové prostředí pro Javu

na Maca, byla společnost Natural Intelligence (www.natural.com)

se svým produktem Roaster. Po několika vývojářských verzích

přišla letos na trh první finální verze tohoto produktu, Roaster

3.0, kterou již ovšem nabízí nově založená společnost Roaster

Technologies (www.roaster.com).



Roaster 3.0 je integrované vývojové prostředí, vytvořené

speciálně pro tvorbu apletů a aplikací v jazyce Java. Svým

snadným ovládáním a vysokou funkčností je vhodné pro začátečníky

i pro profesionální uživatele pracující s tímto programovacím

jazykem (méně vhodné je pro kombinaci Javy s dalšími jazyky). V

jednom balíku najdete vše, co pro práci s programy v Javě

potřebujete: od editoru zdrojového textu a správce projektů,

přes kompilátor do bajtového kódu až po výborné ladicí

prostředí. Vše je integrováno do jednoho celku se snadno

ovladatelným uživatelským rozhraním, které vývoj dále urychluje.



Editor



Již samotný vestavěný editor zdrojových textů v Roasteru může

tvorbu programů v Javě výrazně usnadnit, zvlášť pokud jste dosud

pro jejich psaní používali běžný textový editor. První, čeho si

na něm všimnete, je barevné a stylové rozlišení různých částí

textu podle jejich funkce v programu (viz obrázek 1). Jinou

barvu tak mohou mít klíčová slova, jinak jsou zobrazeny řetězce,

komentáře a ostatní text. Způsob zobrazení lze uživatelsky

nastavit a každý tak může editor uzpůsobit svým zvyklostem.

Kromě Javy rozpoznává Roaster také syntax jazyků C, C++, SQL a

HTML, což znamená, že i u textů v těchto jazycích můžete využít

barevné a stylové rozlišení částí textu.

Editor v Roasteru také umí text automaticky formátovat a dodat

tak přehledné odsazení bloků programu a zarovnání odpovídajících

si složených závorek. Na rozdíl od syntaktického rozlišování ale

není formátování uživatelsky přizpůsobitelné. Pokud tedy

používáte vlastní styl formátování, musíte si všechno dělat sami.

Každé editační okno obsahuje lištu s nástroji, ve které

například najdete několik samostatných schránek pro kopírování

textu, můžete si zde uložit záložky nebo vybráním názvu metody z

nabídky přejít přímo na místo, kde je metoda definována. Tato

lišta je plně uživatelsky konfigurovatelná a lze ji tedy

uspořádat a obohatit o další funkce zcela podle vlastního přání.

Příjemnou práci s editorem dále usnadňují drobnosti typu

zvýraznění odpovídající otevírací závorky při zápisu uzavírací

závorky nebo podpora funkce táhni a pusť pro přenášení textu.

Editor také umí přehledně zobrazit přeložený bajtový kód, ten

ale přirozeně nejde upravovat.

Roaster obsahuje poměrně silnou vyhledávací funkci, podporující

vyhledávání použitím regulerních výrazů. Vyhledávat lze nejen v

aktuálním dokumentu, ale také v dalších souborech.



Správce projektů



Při tvorbě komplikovanějšího softwaru se, nejen z důvodu

přehlednosti, téměř vždy používá více souborů se zdrojovým

textem. Nejinak je tomu i u jazyka Java, kde vlastně tvorba

každého apletu zahrnuje minimálně dva soubory, zdrojový text

apletu a HTML dokument s odkazem na aplet.

Pro přehlednost jsou v Roasteru informace o používaných

dokumentech uloženy do jediného souboru, tzv. projektu, ze

kterého lze potom přistupovat k libovolnému zahrnutému

dokumentu. Nejen že odtud můžete dokument zobrazit v editoru,

ale máte zde také okamžitý přehled o všech třídách a jejich

metodách, jež jsou v dokumentu definovány.

Právě přehledné zobrazení hierarchie tříd, jejich dat a metod,

je pro snadný vývoj softwaru v objektově orientovaných jazycích

typu Java klíčové. Roaster proto nabízí dvě možnosti snadného

přístupu k datům a metodám jednotlivých tříd (samozřejmě kromě

přímého editování zdrojového textu). Chvíli mi ale trvalo, než

jsem se k těmto skvělým funkcím dostal, protože jsou zcela

nečekaně ukryty pod nabídkou File-New.

V okně Class Browser lze zobrazit seznam všech tříd včetně metod

a dat zvolené třídy. V dolní části okna je potom editor, takže

lze třídu, tj. kód jejích metod a definici dat, hned na místě

upravovat. Možná ještě působivěji, alespoň graficky, působí okno

Class Tree , které, jak napovídá název, zobrazuje hierarchickou

strukturu tříd zachycující dědičnost formou stromu. Opět lze u

zvolené třídy zobrazit její metody a data, a hned je také vidět,

co třída zdědila od své rodičovské třídy (viz obrázek 2).

Při tvorbě nového projektu nabízí Roaster „čaroděje“, jenž po

zodpovězení několika jednoduchých otázek typu „vytváříte aplet

nebo aplikaci?“ vygeneruje potřebné soubory s kostrou, kterou

stačí doplnit vlastním kódem. Do projektu lze samozřejmě

průběžně přidávat další soubory, nebo je naopak odebírat. Díky

projektu také nemusíte ručně kompilovat jeden soubor za druhým,

ale příkazem Make necháte zkompilovat vše, co je potřeba.



Kompilátor a Java VM



Roaster nepoužívá vlastní kompilátor Javy, místo něj je vestavěn

standardní kompilátor javac, který je vlastně také napsán v

Javě. Kompilace mi osobně připadala poměrně pomalá (a nešla

přerušit), na druhou stranu je možné Roaster díky zásuvné

architektuře rozšířit o libovolný kompilátor napsaný v Javě.

Kompilátor překládá zdrojový text programu do bajtového kódu,

který lze ihned vyzkoušet v aplikaci Roaster Runner. Ta

tentokrát sází na vlastní virtuální stroj Javy, který je slušně

rychlý. Virtuální stroj s JIT (just-in-time) kompilátorem je

dokonce nejrychlejší na platformě Macintosh, a navíc běží na

PowerPC i na starších 68k. Zatím je podporována „Java 1.0.2“,

verze Roasteru 3.1, jež bude zdarma dostupná jako upgrade verze

3.0, bude moci využívat virtuální stroj MRJ 2.0 od Applu (ten

bude podporovat Javu 1.1, ale zatím není dostupný). Dnes ještě

většina javovských produktů pro Macy používá podobně jako

Roaster vlastní virtuální stroje Javy, s integrací MRJ (Mac OS

Runtime for Java) do systému lze ale očekávat jejich postupný

přechod na tuto systémovou technologii, podobně jako producenti

digitálního videa využívají QuickTime.

Roaster je také schopen vytvářet samostatně spustitelné aplikace

tak, že k bajtovému kódu přibalí vlastní virtuální stroj (asi

1,7 MB). Takové aplikace potom nepotřebují žádný další virtuální

stroj a běží jako každá jiná macovské aplikace. To je trochu

jiný přístup, než jaký se používá pro vytváření spustitelných

aplikací pomocí JBindery v MRJ SDK. Tyto aplikace jsou potom

také spustitelné poklepáním, vyžadují ale přítomnost virtuálního

stroje MRJ v systému. Roaster v budoucnu na tuto metodu také

přejde.



Debugger



Jedním z nejdůležitějších a nejnáročnějších kroků při vývoji

softwaru je jeho ladění. Roaster proto obsahuje vestavěný

debugger (viz obrázek 3), který umožňuje provádět program krok

za krokem a přesně sledovat jeho chování. Volit lze mezi

procházením bajtové nebo zdrojové verze kódu (je-li dostupný

zdrojový kód) a k dispozici jsou běžné ladicí nástroje pro

provedení dalšího kroku programu. Uživatel si může nechat

zobrazit hodnoty lokálních proměnných (nejde je ale měnit) nebo

volací sekvenci procedur. Při zobrazení běhového zásobníku a

okna Threads ale debugger vytrvale hlásil chyby, takže tato okna

nešlo používat.

Vestavěný debugger odpovídá snadností ovládání celému prostředí

Roasteru. Okna jsou přehledně uspořádána, takže ho můžete ihned

začít používat bez dlouhého studování manuálu.



Dokumentace



V poslední době se stalo zvykem, že dokumentace softwaru je

dodávána v elektronické podobě jako soubor formátu PDF, a

nejinak je tomu i u Roasteru (prohlížecí program Adobe Acrobat

Reader je přiložen). Na CD s programem byla bohužel ještě

neúplná dokumentace, kompletní verzi je možné nahrát z Webu.

Přiložena je také programová dokumentace jazyka Java s popisem

„vestavěných“ tříd, jejich metod a dat. Tuto dokumentaci lze

kdykoliv vyvolat z editoru, trochu mi v ní ale chyběly příklady

použití a přesný popis toho, co daná metoda dělá.

Hovoříme-li o dokumentaci, neměli bychom opomenou schopnost

Roasteru automaticky generovat „dokumentaci“ vytvářených

programů v podobě HTML stránek.



Další software



Síla Roasteru 3 není jen v integrovaném vývojovém prostředí, ale

také v množství dalšího softwaru, který dostanete jako

standardní součást dodávky. Přímo od Roaster Technologies

pochází vývojová verze softwaru Interface Brewer pro vizuální

tvorbu uživatelského rozhraní. Z tohoto pohledu je neméně

zajímavá přítomnost knihovny prvků Netscape Internet Foundation

Classes pro tvorbu uživatelského rozhraní spolu s Netscape IFC

Constructorem, což je javovská aplikace pro grafickou tvorbu

rozhraní použitím IFC (viz obrázek 4). Určitě užitečný je i

balík JDBC (Java Database Connectivity) od OpenLink Software pro

napojení javovských programů na ODBC databáze. Dále zde najdete

knihovny pro práci s 3D objekty (J3D SpaceCrafter), sadu pro

tvorbu tabulek, stromů apod. Samozřejmostí je také přítomnost

celé řady vytvořených apletů, z nichž mnohé jsou doplněny

zdrojovým textem.



Shrnutí



Roaster vyniká uživatelsky příjemným rozhraním, které tvorbu

Java apletů i aplikací zrychluje a usnadňuje. Za vyzdvižení

stojí snad vše, co obsahuje, od editoru přes Browser a Class

Tree okna až po debugger (i s jeho chybami). A to jsme se

nezmínili o možnosti tvorby přenositelných zip souborů nebo o

podpoře skriptovací technologie AppleScript.

7 0........../DĚD



Roaster 3.0

K recenzi poskytla firma: Roaster Technologies, 725 Concord

Avenue, Cambridge, Massachusetts 02138, U.S.A.

www.roaster.com

Cena: USD99



Obrázky:

1) Editor v Roasteru přehledně rozlišuje syntaktické prvky kódu

(editor.tif)

2) Browser a Class Tree nabízejí snadný přístup ke třídám,

jejich metodám a datům (classes.tif)

3) Ladicí prostředí Roasteru je přehledné a snadno ovladatelné

(debug.tif)

4) Netscape IFC Constructor nabízí vizuální tvorbu uživatelského

rozhraní (IFC.tif)