phpRS            

Dnešní datum: 07. 09. 2010   | Hlavní stránka | Seznam rubrik | Kniha návštěv |  
  Hlavní menu
Hlavní stránka
Seznam rubrik
Fotogalerie
Kniha návštěv
Stáhněte si
Odkazy
Ankety
TOP 15

  Reklama


  Rubriky

  Poslouchám na síti


Spusť přehrávač


Spusť přehrávač


  Informace o webu
Všehochuť aneb od každého trochu

Content © 1991-2010 Slávek Rydval

View Slávek Rydval's profile on LinkedIn

Vytvořeno pomocí phpRS a Texy!

RSS kanál

Software

* Borland Delphi 2005 Architect

Vydáno dne 28. 06. 2005 (3018 přečtení)

Cesta vývojového nástroje Delphi byla poměrně dlouhá a nutno říct, že nebyla nijak přímá a bezproblémová. První verze Delphi se vytvářela pod kódovým označením VBK (Visual Basic Killer), na svět přišla v únoru 1995 a byla učena pro 16-bitová Windows. Tehdy šlo opravdu o převratnou novinku v oblasti vývoje pro systém Windows, která si získala srdce mnoha vývojářů, a to nejen těch, kteří dosud pracovali s Pascalem. Musím říct, že jsem si Delphi zamiloval i já.

Od druhé verze bylo vše (tedy jak prostředí tak i výsledné aplikace) 32-bitové. IDE i jazyk se verze od verze zdokonalovalo, ale nedá se říct, že nijak dostatečně, jak by si vývojáři přáli. Navíc se vyskytly chyby známé jako „Problém sudých verzí“, kdy právě sudé verze kazily Borlandu reputaci.

Od šesté verze se zdálo, že Borlandu došel dech nebo usnul na vavřínech. Žádné drastické změny v IDE ani překladači se nevyskytovaly, Delphi 7 se mohly klidně označit jako verze 6.1 (možná někteří namítnou, že obsahují modelovací nástroje, ale to až nejvyšší edice, které je oproti edici Professional prodáno zanedbatelné množství). Mezitím přišel Microsoft s konečně opravdovým vizuálním nástrojem pro vývoj nad novou platformou .NET Framework — Visual Studio .NET (dále jen VS.NET). Mnoho Delphistů, alespoň v České republice, Delphi opustilo a vrhlo se do spárů něčeho, v čem viděli budoucnost.

Borland dlouho jakoby nevěděl co s tím, až nakonec přišel s C# Builderem a poté i s Delphi 8. Poslední jmenovaný byl často nazýván Delphi 1 .NET (a mnohdy i s přívlastek Alfa či Beta verze). Pravdou je, že s konkurencí se srovnávat nemohl (a to nejen co se funkcí týče, ale i ceny).

Koncem roku 2004 přišly na trh Delphi 2005. Co přináší nového? Jsou vůbec konkurence schopní? A jsou to pořád ty Delphi, co známe? Pojďme se na nové Delphi podívat podrobněji.

Z Delphi jakožto vývojového nástroje používajícího jazyka Object Pascal se stalo multijazykové prostředí zastřešující vývoj jednak pro 32-bitové prostředí Windows (knihovna VCL, jazyk Object Pascal) a jednak pro .NET Framework (knihovna VCL.NET a FCL v jazyku Object Pascal a dále C#). Borland se zde vydává cestou VS.NET, které podobným způsobem pod jedno univerzální prostředí schovává libovolné množství jazyků. Předpokládám, že brzy dojde na přidání C++ Buildera a J Buildera. Byl by to krok správným směrem. Stejně tak by se mohl integrovat překladač Visual Basicu .NET a C++.NET (nyní to lze dodat pouze ručně).

Delphi 2Prostředí jako takové je založené na technologii Galileo, kterou můžeme znát již z první verze C# Builderu nebo Delphi 8. VS.NET je značně podobné, chtělo by se říct, že někdo hodně opisoval. Uživatelé zmíněných prostředí si možná již zvykli, ale Delphisti přecházející z Delphi 7 a nižších si budou muset osvojit nejen příjemné věci jako je zabalování právě nepotřebných kusů kódů, tak i nepříjemnosti jako je nemožnost dát vedle sebe dva formuláře případně formulář a odpovídající zdrojový kód. Pozitivní je alespoň možnost jednotlivá okna oddokovat a používat rozložení téměř shodné s Delphi 7 a nižší.

Dalším zajímavým prvkem je panel konstrukcí (Structure Pane). Můžeme si to představit jako průzkumník kódu (Code Explorer) s pohledem na objektový strom (Object Tree View) vylepšený o další možnosti. Jednou z nich je zobrazování chyb, které se v kódu objeví během jeho psaní (tzv. Error Insight, viz dále). Pokud ji neopravíte, můžete ji sledovat právě zde.

Příjemná je paleta nástrojů, která kontextově mění svou nabídku. Není-li nic otevřeno, nabízí se vytvoření mnoha různých projektů. Při psaní kódu je to zase možnost dodat nějaký fragment kódu (je to podobné vlastnosti Code Insight známé z dřívějších verzí). Paleta nástrojů dokáže filtrovat svůj obsah a případně i jej jednoduše rozšířit např. pomocí drag'n'drop. Pokud se vám takový způsob práce líbí, jsou k dispozici komponenty TButtonGroup, TCategoryButtons a TDockTabSet (jak pro VCL tak i pro VCL.NET), které provádějí totéž a lze je využít ve vlastních projektech.

Při otevření projektu ze starší verze Delphi nebo Visual Studia .NET jste dotázáni na možnost převodu na jinou platformu resp. jiné vývojové prostředí. Nečekejte žádné zázraky, spíše jde o projektová nastavení a volbu odpovídajících jednotek. Např. API funkce se nepřevedou.

Výraznou novinkou je refaktoring. Je to jedna z mála vlastností, které konkurenční VS.NET dostane až v další verzi připravované na tento rok. Delphi 2005 podporují metody přejmenování symbolu, extrahovat metodu, vytvoření resourcestringu a další. Pokud zvolíte např. přejmenování formuláře, můžete si nechat zobrazit refaktorovací panel s informacemi a odkazy, kde k refaktorování došlo. Pracuje to pěkně, škoda, že to nepřišlo dříve.

Používání nápovědy k třídám a parametrům metod je v dnes rozsáhlých knihovnách snad jedna z nejčastěji prováděných věcí. Dřívější verze znaly doplňování kódu a případně seznam parametrů. Delphi 2005 jdou dál a nápovědu zobrazují s více detaily a odkazy do nápovědného systému. Tento Help Insight je možné vyvolat nejen v editoru jako takovém, ale i např. ve zmíněném doplňovači kódů.

Delphi 5

Dalším zlepšením při psaní kódu je tzv. Error Insight, který si lze představit jako kontrolu pravopisu známou z editorů kancelářských balíků. Pokud např. nadeklarujete proměnnou typu, který není v daném místě znám (např. proto, že je definován v unitě, která není uvedena v sekci uses), dojde k podtržení všech nevhodných výskytů v kódu. Při najetí myši nad takto zvýrazněný symbol Delphi zobrazí text blíže specifikující chybu. Všechny tyto chyby jsou pak také zobrazeny v již zmíněném panelu konstrukcí.

Jistě znáte ten pocit, když jste něco předělávali, pak jste ale zjistili, že je to špatně, ale cesta zpět již nevede. Původní verzi schovanou nemáte, operace Undo nepomáhá a tak musíte složitě přemýšlet, jak to bylo původně. S Delphi 2005 již přemýšlet netřeba — ty si totiž schovávají takto několik verzí souboru zpět (standardně 10, ale lze to změnit) a programátorovi dovolují vrátit se k původní podobě. To se děje na záložce History v editoru. Tam lze sledovat obsahy jednotlivých revizí a informace o nich a dále rozdíly mezi vybranými dvěma revizemi. Zde bych měl připomínku ke způsobu zobrazení, které probíhá v jednom okně a změny jsou pod sebou narozdíl např. od Visual SourceSafe či Araxis Merge, kde se rozdíly zobrazují přirozeněji vedle sebe.

A když se již bavíme o prostředí, ve zkratce jmenujme např. možnost perzistentních záložek v editovaném souboru (dosud se po zavření souboru ztratily), volba Undo after save je konečně (!) ve výchozím stavu zaškrtnutá, naopak Show compiler progress je stále nutné po instalaci zaškrtnout, při příkazu View unit lze vybrat více jednotek, stejně tak v případě Use unit. Bohužel při Use unit nelze zadat unitu, která je sice standardně ve VCL(.NET), ale není v projektu. Ach jo. Prostředí podporuje vícero kódování souborů (např. UTF-8).

Překladač dostal do vínku mj. funkci, po které jsem toužil snad od první chvíle, co jsem začal používat pole a kolekce, a to operátor in. Není teď nic snazšího než napsat např. for i in MyArray do… Dalšími novinkami jsou vnořené typy (nested types), nevím ale, zda to lze systematicky využít pro zčitelnění kódu). Zásadní změny se však překladač, alespoň co se Win32 týče, nedočkal.

Překladače Delphi 8 a C# Builderu začaly podporovat generování dokumentace na základě XML tagů v komentářích. Nyní to lze použít i pro Delphi 2005.

Vývoj databázových aplikací v Delphi vždy bylo přímočaré, byť skoro s každou verzí přišlo něco jiného a to staré se vleče jako smrad s novými verzemi (ano, narážím na BDE). Dnes je na pořadu Borland Data Provider (BDP). Chápu snahu ušetřit vývojářům práci při přechodu mezi různými verzemi a databázovými systémy, ale osobně dávám přednost nejrychlejší cestě, tedy přímé. Různé vrstvy jednak znesnadní nebo úplně odstraní možnost použít některé funkce typické pro danou databázi a pak je to samozřejmě náročnější na paměť a výkon. Typickou ukázkou je např. až nyní zavedená podpora Sybase serveru nebo oraclovských balíčků. V Delphi 2005 lze také vytvářet a modifikovat za pomocí Data Exploreru tabulky a sloupce. Opět si ale myslím, že od toho jsou poctivé CASE nástroje, navíc většinou se vyvíjí proti nějakému schématu, které se případně upravuje skriptem, nikoliv ad hoc takto někým v čemsi, co později nelze dohledat. Použitelnější je však funkce testování uložených procedur, která se může mnohým hodit. Pokud však přesto chcete využívat všech databázových výhod Delphi 2005, musíte mít edici Enterprise nebo Architect. Proč konkrétně BDP není již ve verzi Professional, mi je záhadou.

Mimo vývoje tlustých a databázových klientů lze v Delphi 2005 vytvářet ASP.NET aplikace. Tato funkce byla zavedena již v osmé verzi a zde je rozšířena a obohacena o některé novinky. Vyjma klasických ASP.NET stránek je možné dělat webové služby, její klienty a další. Nasazení aplikací (postupem XCOPY nebo FTP) se provádí přímo z projektového manažera. Návrhář webových formulářů dokáže používat šablony např. pro formátování sloupců tabulek, takže není třeba vše dělat od začátku. Při editaci HTML kódu lze nově využít doplňování kódu a zvýraznění syntaxe pro CSS a XHTML. Pokud vám nedostačují stávající řídící prvky, pak můžete zvolit některé nové: DBWebAggregate­Control, DBWebNavigato­rExtender, DBWebSound a DBWebVideo. Jejich význam je snad jasný z názvu.

Delphi od své verze 7 edice Architect nepodporuje pouze klasické programování ve stylu napsání kódů, přeložení, opravení chyby, přeložení, …, ale stále více zasahuje do celého životního cyklu vývoje aplikací. Nejprve to bylo objektové modelování v UML a propojení s kódem, dnes je to kromě toho i testovací framework a po zakoupení společnosti StarTeam i podpora konfiguračního řízení. Podívejme se v krátkosti na jednotlivé oblasti.

Jak již bylo napsáno, StarTeam není původní produkt Borlandu. Jde o vyspělý (i když ne všemohoucí) nástroj pro správu zdrojových kódů, sledování jejich změn v čase. Protože je to velký nástroj (výrazně propracovanější než u nás velmi časti používaný Microsoft Visual SourceSafe), nemá cenu se o něm rozepisovat, zasloužil by si vlastní recenzi, podívejme se pouze na integraci s Delphi. V menu je přímo položka StarTeam s mnoha možnostmi: vložit projekt do databáze, vybrat jej, porovnat, vyhledat a další. Dále je připraveno okno s procházením se po jednotlivých konfiguračních položkách projektu.

Testovací framework vychází z NUnit verze 2.2. V Delphi 2005 je zavedena podpora jak pro Win32, tak i .NET Framework (Delphi, C#). Nejprve je potřeba vytvořit testovací projekt a pak připravit testové případy, k čemuž slouží průvodce. Po napsání testu již lze testovat.

Pro modelování je použito ECO (Enterprise Core Object), což je modelovací základna pro UML vytvořená Borlandem. Její hlavní předností je navázání přímo na kód, takže změny v modelu se projeví v kódu a obráceně. S Delphi 2005 přichází ECO II, které mj. podporuje vytváření webových aplikací a služeb. K dispozici jsou odpovídající průvodci. Dále je zde komponenta ECODataSource pro databázové webové komponenty. Databázoví vývojáři zase ocení reverse engeneering z databáze, který vytvoří odpovídající UML diagram.

Zkušenosti ze života

S Delphi 2005 jsem pracoval sice krátce, ale i tak to lze bez velkého zaváhání označit za hrůzu. Po spuštění, které trvá příšerně dlouho, si v paměti vezme 160 MB. Po nainstalování balíčků a překladu středně velké aplikace pro platformu Win32 to již bylo 430 MB paměti.

Delphi 3Prostředí je obecně pomalé a občas i padavé, jakoby bylo šito horkou jehlou (možná právě proto již existuje první opravný balíček). Pokud např. spustím prostředí, vytvořím si nový projekt, tak přepínání mezi formulářem a jeho kódem je kolem dvou vteřin a to pokaždé. Načtení existujícího projektu je tragicky pomalé (desítky vteřin), stejně tak např. přidání adresáře do Search path projektu. Uživatel se ale nic nedozví, protože kurzor myši se na přesýpací hodiny nepřepne, a tak lze nabýt pocitu zamrznutí. Kde asi udělali pánové z Borlandu chybu? Delphi 3

Oproti dřívější verzi se nezměnilo nahrazování, které dokáže operaci provést pouze v aktuálním okně, nikoliv však např. ve všech souborech projektu. Pravda, leckdy pomůže refaktoring, ale na něco je krátký. Kde je problém? Nepříjemné je i změna ikon v prostředí, takže kdo se orientoval již pouze podle obrázků, musí se to naučit znovu.

Tragická je také nápověda. Již nenajdete okno např. s vlastnostmi či událostmi a druhé s jejich popisem, ale vše je pěkně (tedy vlastně nepěkně) v jedné HTML stránce. Člověk aby se uklikal. U mnoha témat chybí mé oblíbené „viz také“. V indexu toho je málo (např. chybí direktivy překladačů). Kontextovost se vytratila (zkuste ji použít na slovo strict ve vymezení platnosti třídy strict private; dostanete se do nápovědy k Visual Basicu). Některé vysvětlení je k ničemu. Je to odfláknutá práce. Také rozsah není (hlavně pro vývoj nad platformou .NET) dostatečný, čekal bych zde celou MSDN Library. Bohužel, musíte mít vlastní licenci nebo se připojovat k Internetu. Ještě že máme dnes každý pevnou linku za pár kaček. Delphi 1

Naproti tomu je v Delphi 2005 spousta vylepšení, která práci dokáží ušetřit. Pravdou je, že to vývojáři čekali již v dřívějších verzích. O mnohých jsem se zmínil výše, takže není třeba se příliš rozepisovat. V ostatních případech jde většinou o drobnosti, na které budete přicházet postupně, budete-li tento nástroj používat.

Závěr

Podíváme-li se na Delphi 2005 jako na samostatný celek, můžeme říct, že Borland po dlouhé době ukázal, že umí udělat zajímavý produkt. Bohužel při porovnání s konkurencí je to výrazně horší. Smrtelná pro mnoho potencionálních uživatelů může být absence podpory mobilního frameworku nebo cena (srovnejte si např. obsahy MSDN či VS.NET od Microsoftu s obsahem balení Delphi). Pravdou je, že snížil náskok, ale pořád je vlak s VS.NETem daleko na horizontu. Co tedy s tím? Pokud jste skalní fanoušci Borlandu (jenže už ani ta nostalgie není, co bývala), můžete přejít. Pokud jste dříve přešli na VS.NET, zůstaňte tam. A jestliže chcete rozjíždět nový projekt nad platformou .NET, pak já bych opět volil konkurenci. Přeci jenom brzy bude nejen .NET Framework 2.0, ale i nová verze VS.NET, která bude mnohem dále co nyní (např. bude obsahovat dnes uvedený refaktoring).

Ostatní

Plusy

  • refaktoring
  • testovací framework
  • vyspělé prostředí

Mínusy

  • pomalé
  • špatná nápověda
  • chybí podpora vývoje mobilních aplikací

Závěr

  • Prostředí pro vývoj aplikací pro .NET Framework a prostředí Win32.

Kontakt

Borland, s.r.o.
http://www.borland.cz/
Na Pankráci 30
140 00 Praha 4
tel.: +420 234 633 356

Cena

  • 98 056,00 Kč (včetně DPH)

Použitá konfigurace

  • Windows 2000 Professional SP4
  • CPU Intel Celeron 1,8 GHz
  • 512 MB RAM
  • 40 GB HDD

Tento článek byl napsán pro časopis Softwarové noviny 3/2005.

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.




[Akt. známka: 0 / Počet hlasů: 0] 1 2 3 4 5

Celý článek | Autor: Slávek Rydval | Počet komentářů: 0 | Přidat komentář | Informační e-mailVytisknout článek

  Čtenář
Jméno:
Heslo:


Registrace | Info
Zapomenuté heslo

  Vyhledávání

Hledej
na Nawebce!


Rozšířené vyhledávání

  Kalendář
<<  Září  >>
PoÚtStČtSoNe
  1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30    

  Reklama


rkEdit především pro vývojáře
rkEdit především pro vývojáře