Delphi se již mezi programátory poměrně úspěšně zabydlely a staly se oblíbenými. Až dosud bylo jejich velkou nevýhodou absence nástroje, který by se dal označit za modelovací. Se sedmou verzí je však vše jinak. Ovšem nepředbíhejme.
Po nainstalování Delphi je nutné překousnout otravující registraci (a
to pro každého uživatele, který se k počítači přihlásí a chce
s Delphi pracovat), jinak po třiceti dnech máte prostě smůlu. První věc,
které si všimnete, je vzhled aplikace přizpůsobený Windows XP, resp. novým
tématům, které Microsoft (a zřejmě pouze on) považuje za to nejlepší.
Ale Delphi nejsou o vzhledu, ponechme ho proto stranou.
Podívejme se nejprve na novinky v paletě komponent. WindowsXP si
vyžádala komponentu XPManifest (ke které jsem nenašel nápovědu), pro
Action Bandy jsou barevná schémata a další. To jsou veskrze drobnosti. Velmi
potěšující je ovšem zavržení QuickReportu a přechod k Rave Reportu,
který je přeci jenom vyspělejší, a pokud mohu soudit po pár hodinách
testů, také mnohem spolehlivější. Knihovna je navíc určena nejen pro VCL,
ale i pro CLX, takže ji lze používat v multiplatformních aplikacích.
Výstup je možné provádět nejenom do rtf či html, ale i do formátu pdf.
V záložce Dialogs je navíc dialog pro nastavení stránky
(TPageSetupDialog). Pro CLX byla rozšířena podpora v TOpenDialogu a
TSaveDialogu pro náhled souboru a v záložce System jsou komponenty pro
procházení disku. Konečně rozšíření doznaly i komponenty Indy, které
slouží k přístupu na Internet. Příjemné rozšíření je v komponentě
formuláře, které umožňuje magnetické přichytávání k okrajům
obrazovky známé např. v přehrávači WinAmp.
Relativně dost novinek je v prostředí, nejde však o nic revolučního,
ale víceméně o nutnost. Zvýraznění syntaxe již nefunguje pouze pro
zdrojové soubory Object Pascalu a SQL, ale i pro další typy souborů,
převážně „internetových“: HTML, XML, XSLT, WML a další. V nabídce
New… jsou pro to zvláštní ikony. Zajímavější je však to, že pro tyto
soubory funguje (ne vždy zcela správně) i Code Insight. Ten je navíc opět
o něco rychlejší, takže práce jde pěkně od ruky. Pro každý takovýto
typ je určena i jiná sada šablon.
Další změnou k lepšímu je zvýraznění tučným písmem hodnot těch
vlastností v inspektoru objektů, které jsou různé od přednastavené
(např. šířka, výška, jméno a další). Pokud paleta komponent obsahuje
tolik komponent, že se na záložce nevejdou na jednu obrazovku, jsou na
pravém okraji stránkovací tlačítka namísto šipečky pro posun o jednu
komponentu. Další zlepšení je v manažeru projektu – pokud zde máte ve
skupině více projektů, můžete si vybrat od kterého projektu vše
přeložit (příkazy Make All from Here a Build All from Here). Ano, jde
o drobnost, ale mě to v předchozích verzích Delphi chybělo.
Co mě ovšem udělalo opravdu radost, je rozdělení okna Messages na
záložky Build a Search, protože neustálé míchání obou věcí do
jediného okna mi již pár šedivých vlasů přidalo (ale neříkejte to
manželce, zatím ji přesvědčuji o tom, že za ně může ona). Podobně lze
na záložky rozdělit okno Watches. Tam si ale záložky definujete sami a do
každé z nich můžete vkládat proměnné, které spolu nějak souvisí
(jednu proměnnou lze samozřejmě mít ve více skupinách). Pojďme
ale dál.
Velkou kapitolou Delphi jsou databáze. Databázový přistup v Delphi
zaznamenal od první verze velký vývoj. Databázový stroj BDE znají již
uživatelé Windows 3.11 a není tajemstvím, že je to již stařík
belhající se o holi do propadliště dějin. Borland oficiálně ukončil
jeho vývoj, ale přesto nadále poskytuje komponenty, které umožňují
pomocí BDE k databázím přistupovat. Je mi záhadou, proč je nezahodil do
nezrecyklovatelného odpadu. Je to zřejmě proto, že z Database Expressu,
poprvé představeného v Delphi 6, teprve začíná něco vyrůstat. Kromě
zdokonalení „vnitřností“ přibyla komponenta TSimpleDataset pro
dvouvrstvé databázové aplikace (jde o náhradu TSQLClientDataSetu) a nový
ovladač pro Microsoft SQL Server. Osobně si ale myslím, že by se takovéto
různé obecné přístupové technologie měly bez jediné slzy zavrhnout,
stejně jsou jen ke hraní, a k databázím přistupovat nativně – jedině
tak lze postavit aplikaci, která dokáže nejlépe využít konkrétní výhody
daných serverů. Naštěstí se na to alespoň trochu u Borlandu myslí a
k dispozici jsou ADO komponenty (zapomeňte na DBExpress pro MS SQL Server),
komponenty pro přístup k Interbase (zapomeňte na DBExpress pro Interbasi) a
pro ostatní servery (zapomeňte na DBExpress pro ostatní servery) lze
většinou kvalitní komponenty stáhnout od třetích stran.
Od verze 6 se Borland snaží o platformovou nezávislost při tvorbě
aplikací. Knihovna CXL je dostupná na Windows i na Linuxu. Ovšem je tu
i Microsoft a jeho úspěšně se rozvíjející technologie .NET. Borland
připravuje překladač i pro tuto platformu a již nyní má k dispozici
alespoň různá varování překladače např. o nebezpečných přetypování
(do konce roku by měla být k dispozici VCL.NET). Další z možností je
import libovolné assembly jako COM objekt (pozor, někteří se mylně
domnívají, že tak budou moci používat assembly bez nutnosti mít
nainstalovaný .NET Framework, není to pravda). Protože Delphi umí vytvářet
COM objekty, je samozřejmě možný import těchto objektů např. do .NET
aplikací vytvořených např. ve Visual Studiu .NET (recenze viz SWN 4/2002).
Pokud ovšem nemůžete vydržet, na jednom CD v krabici najdete preview verzi
CIL překladače.
Delphi je ovšem také o Internetu. Technologie BizSnap nově obsahuje
prohlížeč, který vizuálně vyhledává a importuje registrované webové
služby. Je také vyřešena podpora překonání výpadků UDDI klientů.
Velkou výhodou je, že mnoho z věcí BizSnapu najdete již ve verzi
Professional. Pokud používáte WebSnap, můžete použít komponenty pro
skripty na straně serveru (podporovány jsou JavaScript anebo VBScript). Nově
je podporován server Apache verze 2.0. Naprostou novinkou je technologie
AtoZed IntraWeb, která slouží k vývoji interaktivních webových stránek.
Na druhou stranu je pro mě zklamáním nulová aktualizace komponenty
TWebBrowser a tak je stále nutné při potřebě větší funkčnosti
stávající odinstalovat a naimportovat znovu s úpravami.
Zřejmě největší novou vlastností nových Delphi je jejich posun
z oblasti normálního každodenního programování (zedničina) do
plnohodnotného vývoje aplikací pokrývajícího celý životní cyklus
vytváření aplikací. K dispozici je totiž Model Maker, což je modelovací
nástroj plně integrovaný do Delphi (a opačně). Začít aplikaci můžete
tedy modelováním (použita je notace UML) a následným vygenerováním
zdrojového kódu do Delphi. Postup je ale možný provést i opačným
směrem. Model Maker dokáže načíst projekt a podle potřeby vytvořit
různé modely apod. Jakákoliv změna v modelu se zpropaguje do Delphi a
samozřejmě např. dopsání metody do třídy v Delphi se sesynchronizuje
s modelem v Model Makeru. Vytváření diagramů je naprosto intuitivní. Při
práci jsem narazil na jediný problém – pokud nainstalujete Model Maker
např. pod uživatelem Administrátor a pak pracujete pod jiným jménem,
máte smůlu.
Posledním nástrojem, který tu zmíním je Bold pro Delphi. Jde o aplikaci
dostupnou pouze v nejvyšší edici Delphi. Bold se integruje do prostředí a
slouží k vývoji založeném na modelech (MDA). Bold jde ještě dál než
Model Maker, umožňuje plnohodnotné modelování pomocí UML, umí modelovat
databázová schémata. Samozřejmostí je export a import jednak do/z Model
Makeru a jednak do/z Rational Rose.
Závěr
Osobně se domnívám, že nová verze Delphi mohla mít klidně číslo
šest a půl. Novinky nejsou natolik zásadní, aby bylo nutné psát hned
sedmičku, obzvláště zůstal-li přebal téměř stejný, tištěná
dokumentace jakbysmet. Největším přínosem je Model Maker případně Bold.
Ovšem otázka, kterou zde již pravidelně u tohoto produktu kladu, je zda
přecházet na tuto verzi, či nikoliv. Jste-li vývojáři v Delphi edice
Professional a vlastníte verzi 5 nebo 6, nemá příliš velký význam sahat
poměrně hluboko do kapsy pro peníze. Pokud ovšem vyvíjíte vícevrstvé
aplikace, webové služby, nebo potřebujete pokrýt co největší životní
cyklus vývoje, Delphi Architect budou jistě dobrou volbou.
Obrázky
Plusy, mínusy, závěr, kontakt, cena
Plusy
- Model Maker
- Rave Report
- Drobná vylepšení v prostředí
- Podpora .NET
Mínusy
- Stále obsahuje BDE
- Některé komponenty mohly doznat vylepšení
- Cena.
Závěr
- Vylepšené prostředí s přípravou na .NET, možnost modelování.
- Produkt měsíce: ano
Kontakt a cena
- Borland CZ
- 128.700 Kč bez DPH
Tento článek byl napsán pro časopis Softwarové noviny 11/2002.
Upozornění: tento text neprošel redakční úpravou, takže je
tak, jak byl napsán včetně případných chyb. Žádná část tohoto
článku nesmí být použita bez předchozího souhlasu autora.
Seznam mých dalších článků je v tomto přehledu.