Nástroje pro vývoj aplikací a jejich vazba na CASE
Semestrální práce 4IT450 CASE ZS 2009/2010
Jiří Jakoubek Radek Štěpán Jiří Neumann Miroslav Žebrák Stanislav Chaloupecký Martin Vlčko
Obsah Obsah.......................................................................................................................................... 2 Úvod ........................................................................................................................................... 3 1.
Sledované funkce (návaznosti) IDE nástrojů na CASE ........................................................ 3
2.
Vývojová prostředí (IDE) - popis + porovnání ..................................................................... 6 Visual Studio 2008 .................................................................................................................. 6 SharpDevelop ....................................................................................................................... 12 PSPad .................................................................................................................................... 13 Delphi 2010 .......................................................................................................................... 14 Oracle JDeveloper 11g.......................................................................................................... 17 MS Expression Web 3 ........................................................................................................... 19 Adobe Dreamweaver CS4..................................................................................................... 21 Microsoft Visual Web Developer 2010 Beta 2 ..................................................................... 22 Zend Studio 7.1..................................................................................................................... 24 Eclipse IDE ............................................................................................................................ 26 PHP Development Tools ....................................................................................................... 28 NetBeans .............................................................................................................................. 30 Rapid SQL.............................................................................................................................. 32 RAD Studio 2010................................................................................................................... 34 Macromedia HomeSite ........................................................................................................ 35 HTML Pad 2010 .................................................................................................................... 35 oXygen XML Editor ............................................................................................................... 37 Altova XML Spy ..................................................................................................................... 39
3.
Porovnání (CASE/IDE - vzájemná podpora; IDE/definovaná kritéria)............................... 41
Zdroje ....................................................................................................................................... 42 Seznam obrázků ....................................................................................................................... 44 Seznam tabulek ........................................................................................................................ 45
2
Úvod V této seminární práci si klademe za cíl, seznámit čtenáře s nejrozšířenějšími produkty IDE (Integrated development environment) a jejich vazeb na CASE (Computer Aided System Engineering) nástroje, které jsou koncem roku 2009 na trhu. Nejdříve přiblížíme základní charakteristiky jednotlivých nástrojů na základě vlastního internet research. Poté načrtneme možné vazby (budou-li nějaké) na CASE nástroje a tyto vazby popíšeme u jednotlivých produktů IDE. Na konci práce uvádíme celkové shrnutí do přehledné matice, která umožní rychlé zorientování se v celé problematice.
1. Sledované funkce (návaznosti) IDE nástrojů na CASE Na počátku naší práce jsme předpokládali velký počet nejrůznějších návazností IDE nástrojů na CASE. Při samotném zkoumání jednotlivých produktů jsme však došli spíše k opačnému závěru a to, že existují v podstatě dvě možnosti, jak lze funkce CASE nástrojů integrovat s vývojovými prostředími: 1. Určitá funkcionalita CASE existuje přímo ve vývojovém prostředí a je tedy jeho součástí (např. Eclipse) 2. Vývojový nástroj je do prostředí CASE ve větší či menší míře propojen prostřednictvím tzv. plug-inů či add-inů, přičemž míra propojení určuje možnost využití funkcionality daného CASE nástroje, do kterého plug-in vývojový nástroj propojuje (viz např. Visual Studio 2008 ale i Eclipse atd.) Pokud tedy bylo naším cílem popsat a zároveň porovnat jednotlivá vývojová prostředí mezi sebou, museli jsme přistoupit k určitému zobecnění hodnocených kritérií. Pro popis produtků jsme zavedli závaznou strukturu, ve které uvádíme • • • • •
Název a verzi produktu Základní informace o produktu Platformu, na které je vývojový nástroj postaven Cenu Možnosti vazby na CASE o Vlastní o Plug-iny
Jednotlivé body se mohou lišit urovní podrobnosti. Ta se odvíjí jednak od velikosti vývojového nástroje, ale také od pohledu člověka, který dané vlastnosti zkoumá. Jako příklad bych uvedl Visual Studio 2008 a Eclipse. Prvně zmíněný nástroj má možnost vazby na CASE prostřednictvím 5 plug-inů, oproti tomu Eclipse jich zahrnuje přibližně 90. Obecnost porovnání jsme volili podle výsledků zkoumání a také z důvodu zajištění přehlednosti pro potencionálního čntenáře. Za účelem porovnání jsme vytvořili následující seznam sledovaných funkcí: •
Vlastní CASE funkce 3
U tohoto bodu zjišťujeme, zdali má vývojový nástroj své vlastní integrované nástroje pro modelování a práci s UML diagramy. To znamená, že jsou tyto funkce k dispozici se základní instalací a není potřeba doinstalovávat další rozšíření nebo napojovat na CASE nástroje. •
CASE plug-iny
•
Forward engineering
Forwar engineering je pojem používaný pro generování struktury programového kódu na základě namodelovaných diagramů např. pomocí CASE nástrojů.
Obrázek 1: Forwar engineering
•
Reverse engineering
Reverse engineering, též označovaný jako "backward engineering" je možnost, jak zahrnout do analýzy či návrhu systému již hotový zdrojový kód. Tato metoda je vhodná právě v případě, kdy máme porozumět již vytvořenému programu. Ze zdrojového kódu dokáže vytvořit obecný model transformovaný do diagramů. Jedná se o formu abstrakce, která je vyžadována při zjednodušení komplexních problémů.
4
Obrázek 2: Reverse engineering
•
Round-trip engineering
Je to proces úprav ve vygenerovaném kódu, který nenaruší vazby mezi vygenerovaným kódem a samotným návrhem systému v podobě diagramů. Pokud provede programátor nějakou změnu v kódu, tato změna se automaticky promítne i do diagramu, kde je tato třída modelována a naopak.
Obrázek 3: Round-trip engineering
(Objekty VŠE, 2009) •
•
Tvorba dokumentace o Tvorba dokumentace je jednou z dobrých vlastností CASE nástrojů. Výstupní dokument má nejčastěji formu XML či HTML dokumentů. Při tvorbě dokumentace je klíčovým faktorem její účel, například podklad pro další vývoj nebo testování, proto je kladen důraz na automatickou aktualizaci při změnách a možnost volby výstupních formátů, tím mohou být napčíklad i MS Word nebo Rich Text Format. Tvorba dokumentace by měla být založena na definovaných pravidlech s možností uživatelských šablon. Týmová spolupráce
5
Vzhledem k tomu, že na většině větších projektů pracuje skupina členů vývojového týmu (přes vývojáře po analytiky), je nanejvýš vhodné, aby CASE nástroj vhodnou formou podporoval možnost jejich spolupráce na projektu. Často se tak děje prostřednictvím podpory správy verzí (implementace repository a subversion) a sdílení rozpracovaných fragmentů. Dále bývá k dispozici podpora kontroly dodržování metodiky (např. zda byly vytvořeny předepsané modely) vývoje a co je důležité, kontrola konzistence vytvářených modelů (autor_neznámý). Úroveň podpory týmové spolupráce se napříč nabídkou CASE liší a není radno při výběru CASE tuto oblast zanedbat. Podpora XMI o Podpora XMI (XML Metadata Interchange) má umožňovat výměnu objektů mezi modelovacími nástroji UML a metadaty MOF (Meta Object Facility) v distribuovaném heterogením prostředí. o XMI definuje standard XML DTD (Document Type Definition), který umožňuje výměnu UML a MOF informací. Rovněž automaticky generuje kód XML DTD pro každý meta-informační model. Verze UML o
•
•
2. Vývojová prostředí (IDE) - popis + porovnání Visual Studio 2008 Info o produktu Microsoft Visual Studio je vývojové prostředí (IDE) od Microsoftu. Může být použito pro vývoj konzolových aplikací a aplikací s grafickým rozhraním spolu s Windows Forms aplikacemi, webovými stránkami, webovými aplikacemi a webovými službami jak ve strojovém kódu, tak ve spravovaném kódu na platformách Microsoft Windows, Windows Mobile, Windows CE, .NET, .NET Compact Framework a Microsoft Silverlight. Visual Studio obsahuje editor kódu podporující IntelliSense (inteligentní automatický návrh proměnných, funkcí a metod) a refaktorování. Integrovaný debugger pracuje jak na úrovni kódu, tak na úrovni stroje. Další vestavěné nástroje zahrnují designer formulářů pro tvorbu GUI aplikací, designer webu, tříd a databázových schémat. Je možné přidávat rozšíření, což vylepšuje funkčnost na téměř každé úrovni - od přidání podpory pro verzovací systémy (jako Subversion a Visual SourceSafe) do přidání nových nástrojů jako editory a vizuální designery pro jazyky specifické pro obor nebo nástroje pro další aspekty návrhu programu (jako klient Team Foundation Serveru: Team Explorer). Visual Studio podporuje jazyky prostřednictvím jazykových služeb, což umožňuje, aby editor kódu a debugger podporoval jakýkoliv programovací jazyk. Mezi vestavěné jazyky patří C/C++ (použitím Visual C++), VB.NET (použitím Visual Basic .NET) a C# (použitím Visual C#). Podpora dalších jazyků jako Chrome, F#, Python a Ruby spolu s ostatními může být přidána jazykovými službami, které musí být nainstalovány zvlášť. Také je podporováno XML/XSLT, HTML/XHTML, JavaScript a CSS. Existují i verze Visual Studia pro určitý jazyk, které uživateli poskytují omezenější jazykové služby. Tyto individuální balíčky jsou Microsoft Visual Basic, Visual J#, Visual C# a Visual C++. (Wikipedia)
6
Obrázek 4: Visual Studio 2010
Platforma .NET
Cena $299 – $10 939 v závislosti na typu produktu (Corporation, 2009)
Možnosti vazby na CASE: vlastní: Class Designer, Database Designer Extensibility plug-iny: Sparx Systems Enterprise Architect, Altova UModel, i3 Design, IBM Rational Rose, Sybase PowerDesigner Tabulka 1: Přehled podpory definovaných funkcí ve Visual Studiu 2005/2008
Vlastní CASE funkce CASE Plug-iny Forward engineering Reverse engineering
ANO ANO ANO ANO
Tvorba dokumentace Týmová spolupráce Podpora XMI Verze UML
ANO ANO ANO 2.2
Míra splnění kritérií je uvedena u popisu jednotlivých pluginů, přičemž některé nemusí splňovat veškeré funkce sledované v přehledové tabulce. Ta je výsledkem souhrnu funkcí všech pluginů. Jako zdroje informací o jednotlivých pluginech sloužila nápověda, ze které bylo čerpáno po instalaci daného produktu. Dalším použitým zdrojem je (Microsoft, 2009).
7
Visual Studio CASE plug--iny Sparx Systems Enterprise Architect 7.5.850 (EA) je samostatné UML 2.1 modelovací prostředí. MDG (Model Driven Generation) Integration je add-on, on, který přináší výhody a bohaté modelovací schopnosti EA a UML 2.1 do MS Visual Studia Studia 2005 a 2008. Intuitivní navigace a editace modelu jsou poskytnuty přímo ve vývojovém prostředí Visual Studia prostřednictvím EA Project Explorer. MDG integrace umožňuje generovat .NET kód z elementů UML. Dále je zde zahrnuta funkcionalita tvorby webové vé dokumentace a reportů.
Obrázek 5: EA Prohlížeč projektu ve Visual Studiu
Vlastnosti •
Integrace EA a UML 2.1 do MS Visual Studia 2005 a 2008
• Navigace a vývoj s využitím modelování UML propojením kódu a příslušného příslu modelu •
Generování reportů v textovém nebo HTML formátu
•
Sdílení plánu mezi analytiky, architekty a vývojáři
•
Týmová spolupráce na projektu díky zabudovanému diskusnímu fóru
•
Sledování změn
• Synchronizace FW/REV FW/REV (C, C++, C#, Delphi, Java, PHP, Python, ActionScript, Visual Basic a VB.NET) (Sparx, 2009) Možnost synchronizace kódu a modelu Synchronizaci lze nastavit ve dvou úrovních. 1. Synchronizace modelu s EA – automatická synchronizace nizace celého nebo části modelu v EA do prostředí EA Project Exploreru
8
2. Synchronizace kódu s modelem manuálně/automaticky
Obrázek 6: Možnost synchronizace kódu a modelu
Altova Altova UModel® 2008 Enterprise Edition je sofistikovaný UML nástroj sloužící pro vizuální návrh modelů aplikací a generování programového kódu a projektové dokumentace. UModel 2008 Enterprise Edition Visual Studio integrace umožňuje uživatelům prohlížet a přepínat mezi softwarovým UML modelem a zdrojovým kódem při vývoji aplikací ve Visual Studiu 2005 a 2008. UModel poskytuje praktickou cestu k visuálnímu návrhu aplikačních modelů v UML a je schopný generovat Java, C# nebo Visual Basic .NET kód a projektovou dokumentaci. UModel také umožňuje vývojářům vývojářům aplikovat reverzní inženýrství – tedy existující program převést do UML diagramů, upravit model dokončit round trip opětovným vygenerováním programového kódu.
9
Obrázek 7: Integrace Umodelu do Visual Studia
Vlastnosti •
Využívá UML 2.2
•
Integrace UModelu do Visual Studia 2005 a 2008
•
Forward engineering a reverse engineering (Java, C#, Visual Basic)
•
Tvorba dokumentace
Obrázek 8: Možnosti funkcí Umodelu
(ALTOVA, 2009)
10
i3 Design i3 Design Constructor/MDRAD pomáhá vývojářům vytvářet datově řízené aplikace založené na vizuálních modelech. Jedná se o vývojářský toolkit integrovatelný optimalizovaný pro Visual Studia 2002, 2003, 2005 a 2008. Umožňuje tvorbu modelů tříd z jazyka scratch nebo pomocí reversního inženýrství z existující databáze nebo XML schématu. Object-Oriented Model Driven Development
Obrázek 9: Object-Oriented Model Driven Development Schema
Vlastnosti • Přímá integrace do Visual Studia • Datově řízené programování • Forward engineering • Reverse engineering (I3 Design) IBM Rational Software Corporation Rational byl získán společností IBM v roce 2003 a nyní je jednou z jejich divizí. IBM Rational Rose XDE Developer for Visual Studio je modelovací nástroj který podporuje UML 1.4. Vlastnosti • Pouze pro Visual Studio 2005 • Forward engineering/Reverse engineering (C++, ANSI C++, COBRA, Visual C++, Visual Basic) • Založeno na UML 1.4 (IBM, 2009) Sybase Sybase PowerDesigner 12.5 je komplexní nástroj pro modelování a návrh, který pomáhá IT profesionálům implementovat efektivní podnikovou architekturu prostřednictvím širokých analytických a modelovacích technik ve vývojovém cyklu. Pokud je integrován s Visual Studiem, poskytuje bohaté analytické a modelovací techniky včetně UML a generování kódu pro všechny vedoucí RDBMS platformy. PowerDesigner Microsoft Visual Studio Plugin umožní převést modelovací možnosti PowerDesigneru přímo do prostředí Visual Studia 2005, kde lze modely zahrnovat do jednotlivých projektů. Vlastnosti • •
Forward/Reverse engineering UML 2.0
11
SharpDevelop Info o produktu SharpDevelop je open source integrované vývojové prostředí, které je volně šiřitelné pod licencí GPL a slouží k vývoji aplikací v programovacích jazycích C#, Visual Basic .NET a Boo na platformě .NET nebo MONO. Usnadňuje psaní, ladění a překlad kódu do výsledných sestavení. Někteří programátoři se rozhodli v rané fázi portovat projekt pod MONO/Gtk#, tento fork se nazývá MonoDevelop, který je multiplatformní Pro kompletaci kódu používá SharpDevelop vlastní C# a VB.NET parser SharpDevelop 1.1 umí převést projekty z Visual Studia do SharpDevelop projektu, až s verzí SharpDevelop 2.0 bylo možné spravovat tyto projekty přímo
Obrázek 10: Sharp Develop 3.1
Platforma .NET
12
Cena OpenSource šiřitelný pod licencí GPL (General Public License)
Možnosti vazby na CASE: • •
vlastní: nemá plug-iny: SharpDevelop Class Diagram
Tabulka 2: Přehled podpory definovaných funkcí v Sharp Develop 3.1
Vlastní CASE funkce CASE Plug-iny Forward engineering Reverse engineering
NE ANO (1) NE NE
Tvorba dokumentace Týmová spolupráce Podpora XMI Verze UML
NE NE NE x
SharpDevelop Class Diagram Projekt, který napodobuje Class Diagram MS Visual Studia. Umožňuje celkový pohled na třídy projektu. Od verze 2.0 je už zahrnutý v základní instalaci programu SharpDevelop.
Obrázek 11: ClassCanvas – SharpDevelop
(IC#Code, 2009)
PSPad Obecně o produktu PSPad je textový editor určený vývojářům a kodérům webových stránek a aplikací (Fiala, 2009). Základní funkcí editoru je usnadnění psaní strukturovaných textů, chceme-li programového kódu. Nástroj lze využít jako IDE a navázat ho na některý kompilátor zdrojového textu. V PSPadu je možné nastavit zvýrazňování syntaxe mnoha programovacích, 13
značkovacích i dotazovacích jazyků. Do jisté míry pomáhá program s doplňováním kódu a pomocí zvýrazňování a zobrazení stromové struktury dokumentu usnadňuje orientaci v něm. Program podporuje práci v projektech, obsahuje interního FTP klienta, možnost náhledu vytvářených www stránek v prohlížeči a najdeme v něm také množství užitečných utilit, jako například převodník číselných soustav, výpočet šifrovaného řetězce jako výsledek MD4, MD5 či SHA1, komprese HTML atd. PSPad se zdá pro svou jednoduchost, transparentnost a dostupnost být oblíbeným nástrojem pro jednodušší projekty.
Platforma Windows
Cena Produkt je volně šiřitelný bez licenčního poplatku.
Vazba na CASE U nástroje PSPad navázání na CASE nevnímám. Funkcionalita se soustředí obecně řečeno na zpracování strukturovaného textu. Případné doplňky, kterých lze na internetu nalézt veliké množství, podle mého názoru ale také s funkcionalitou CASE nesouvisí. PSPad bývá označován jako pokročilý editor prostého textu a v tomto duchu se vyvíjí i jeho funkcionalita.
Tabulka 3: Přehled podpory definovaných funkcí v PSPad
Vlastní CASE funkce CASE Plug-iny Forward engineering Reverse engineering
NE NE NE NE
Tvorba dokumentace Týmová spolupráce Podpora XMI Verze UML
NE NE NE x
Stupeň naplnění jednotlivých kritérií je vyjádřením mé zkušenosti s produktem. V tomto případě PSPad modelování vůbec nepodporuje.
Delphi 2010 Obecně o produktu Dephi je historicky jedním z prvních produktů, které je zvykem označovat jako prostředí RAD (Rapid Application Development). Jádrem prostředí je jazyk Pascal, resp. jeho objektová mutace Object Pascal. První verze byla vypuštěna v roce 1995. O vývoj se starala americká firma Borland až do roku 2008, kdy došlo k odprodání dceřiné společnosti CodeGear, která zastřešovala nástroje pro vývojáře softwaru, společnosti Embarcadero. V současnosti je Delphi robustním vývojovým prostředím (IDE), jejíž poslední verzí je Delphi 2010 (ze srpna 2009) (Wikipedia, 2009). Podle informací publikovaných na webu Embarcadero je Delphi používáno více než 1,7 miliony vývojářů po celém světě (Embarcadero, 2009). Pokusím se nyní zhodnotit zejména možnosti modelování, tedy v souladu s tématem této práce možnosti vazby na CASE. 14
Platforma Windows
Cena Tabulka 4: Ceny jednotlivých verzí Delphi (zdroj: (Embarcadero, 2009))
Delphi 2010 Architect Nový uživatel Upgrade Delphi 2010 Enterprise Nový uživatel Upgrade Delphi 2010 Professional Nový uživatel Upgrade
3499,- EUR 2299,- EUR 1999,- EUR 1299,- EUR 899,- EUR 399,- EUR
Ukázka uživatelského prostředí
Obrázek 12: Delphi 2010 (založení nového projektu)
Vazba na CASE Prostředí Delphi podporuje modelování systému nyní samo o sobě, a to ve verzích Architect a Enterprise (viz Tabulka 4). Je tedy přímo možné vytvářet UML diagramy v prostředí IDE a provázat je s vývojovým projektem a zdrojovými texty. Přehled podporovaných diagramů je patrný z následujícího obrázku.
15
Obrázek 13: Dialog vložení nového diagramu
Delphi umožňuje modelování v UML verze 1.5 a 2.0, přičemž je zachována důležitá vlastnost CASE nástrojů, a sice forward resp. reverse engineering, tj. generování kódu z diagramu a naopak. V rámci nástroje ER/Studio 8.0 Developer Edition pak lze modelovat databázi. Ještě bych zmínil nástroj ModelMaker Tools, který lze integrovat do IDE Delphi a Visual Studio (ModelMaker Tools, 2009). Tabulka 5: modelovací možnosti Delphi (zdroj: (Embarcadero, 2009))
UML MODELING Architect Enterprise Professional UML Code Visualization – at any time, get a UML model X X X view of your source code Enhanced in 2010! Diagrams have an updated look and feel X X X Sequence diagrams X X Collaboration diagrams X X State charts X X Deployment diagrams X X Use case diagrams X X Activity diagrams X X Component diagrams X X Documentation generation X X 80+ Code Metrics that allow for deep understanding and X X static analysis of the health of the object domain Introduced for Delphi Professional in 2010! 10+ X introductory level code Metrics for understanding the health of the object diagram 200+ Code Audits for deep code analysis to better X X understand the coding style and approach Introduced for Delphi Professional in 2010! 10 introductory X level code audits for better code understanding Import model from Rational® Rose (mdl import) X Language neutral UML 1.5 modeling X Language neutral UML 2.0 modeling X
16
Enhanced in 2010! Transformation from language neutral UML 1.5 and UML 2.0 projects to source code projects Enhanced in 2009! Design Patterns support, including GOF patterns New in 2010! Custom design patterns support Diagram printing XMI 1.1 Import/Export Full two-way class diagrams with synchronization between code and diagrams OCL 2.0 support “UML in Color” profile Diagram hyper-linking and annotations
X X
X
X X X X
X X X X
X X X
X X X
X X X X X
Tabulka 6: Přehled podpory definovaných funkcí v Delphi 2010
Vlastní CASE funkce CASE Plug-iny Forward engineering Reverse engineering
ANO ANO (1) ANO ANO
Tvorba dokumentace Týmová spolupráce Podpora XMI Verze UML
ANO ANO ANO 2.0
Modelování a míra jeho podpory v Delphi závisí na konkrétní verzi produktu. Údaje v tabulce jsou vztaženy k nejvyšší verzi, Architect. Detailnější popis vlastních CASE funkcí obsahuje Tabulka 5; existence CASE plug-inu pro modelování resp. jejich počet není nikde explicitně vyjídřen, je tedy možné, že jich existuje více. Mně se ovšem podařilo objevit jeden (Zmíněnž ModelMaker Tools. Možnosti týmové spolupráce se mi nepodařilo ověřit pro aktuální verzi, z předešlé práce pro tento předmět vyplývá, že tuto možnost Delphi má. Na základě tabulky 5 hodnotím naplnění zbylých kritérií.
Oracle JDeveloper 11g Obecně o produktu JDeveloper je všestranné vývojové prostředí. Je zde patrná koncentrace na tvorbu aplikací v jazyce Java, podporovány jsou i další typy jazyků, jako jsou XML, HTML, PHP, Java Script, SQL, PL/SQL či BPEL (Wikipedia, 2009). Umožňuje tedy tvorbu jak standardních desktop aplikací, tak i aplikací pracujících na principu webových služeb (poskytovaných prostřednictvím aplikačního serveru). Zřejmě je podporována tvorba webových aplikací, ale i databází v komplexním pojetí (Oracle, 2009). Produkt je nepřímo zaměřen na tvorbu aplikací a služeb na platformě Oracle. Přestože je samotné prostředí JDeveloperu dostupné zdarma, zásadní prostředek, se kterým JDeveloper spolupracuje (a který přispívá k efektivitě vývoje aplikací – Oracle Application Development Framework (ADF)), je licencovaný. Licenční poplatek je zahrnut v licenci k serverům Oracle WebLogic, při použití na serveru jiného výrobce je třeba uhradit provozní licenci (5800,- USD na procesor nebo 120,- USD na uživatele) (Oracle, 2009). Historie JDeveloperu sahá přibližně do roku 1998, kdy byla vydána první verze (založená na produktu Borland JBuilder). Ta byla přepracována s cílem vytvořit produkt založený na jazyce Java. JDeveloper je navázán na Oracle ADF(Application Development Framework proprietární framework pro vývoj aplikací), což dohromady tvoří prostředí pro rychlý vývoj ve smyslu RAD. Oracle používá označení "visual and declarative development" (Wikipedia, 2009). Poslední verzí v době psaní této práce je verze 11.1.1.2.0 (11g Release 1Patch Set 1) a 17
pravděpodobně nejvýznamnější změny se týkají UML (podporovaná verze 2.2) a vylepšení frameworku ADF. Bylo také přepracováno uživatelské prostředí JDeveloperu (Oracle, 2009).
Platforma Jsou k dispozici balíky určené pro Windows, pro Linux, ale také pro JVM obecně, proto se dá říct, že JDeveloper není závislý na platformě, resp. je možné ho používat na více platformách (Oracle, 2009).
Ukázka uživatelského prostředí
Obrázek 14: Prostředí JDeveloper 11g (Oracle, 2009))
Cena Samotné IDE je zdarma, ADF framework, pokud je využíván, je licencován ($5800,- USD).
Vazba na CASE Modelování je podporováno jak v samotném JDeveloperu, tak formou externího plug-inu. Přímo v JDeveloperu se v souvislosti s UML mluví s tzv. modelery, např. Class Modeler, Use Case Modeler, Activity Modeler, Sequence Modeler. Z pohledu CASE nástrojů pak „tradiční“ přístup získáme dolněním plug-inu (Oracle, 2004). Nejcitovanějším je doplňek společnosti Visual Paradigm, SDE for JDeveloper. Tento nástroj splňuje všechny námi stanovené 18
požadavky na CASE nástroj (většinu již v základní verzi Modeler, například vylepšenou synchronizaci kódu (v reálném čase) až ve verzi Professional) (Hallogram Publishing, 2004). Tabulka 7: Přehled podpory definovaných funkcí v JDeveloper
Vlastní CASE funkce CASE Plug-iny Forward engineering Reverse engineering
ANO ANO (1+) ANO ANO
Tvorba dokumentace Týmová spolupráce Podpora XMI Verze UML
ANO ANO ANO 2.2
Výše zmíněné vlastnosti by (vycházím zde z přehledu nových funkcí JDeveloper 11g (Oracle, 2009)) měl JDeveloper mít i bez instalovaného plug-inu, nepodařilo se mi zjistit, do jaké míry JDeveloper podporuje týmovou spolupráci, XMI a generování dokumentace. Tyto funkce zahrnuje ale zmíněný plug-in (Hallogram Publishing, 2004),Proto tabulku jako celek lze chápat jako přehled vazeb na CASE JDeveloperu s nainstalovaným plug-inem SDE. Opět platí, že mnou uváděný počet existujících plug-inů je výsledkem hledání na internetu, nemusí být konečný.
MS Expression Web 3 Obecně o produktu Microsoft Expression Web 3 je nástroj pro tvorbu webových dokumentů. Web 3 vychází ze známého editoru FrontPage, který byl součástí MS Office do verze 2003. Základem nástroje Web je stejně jako u jeho předchůdce WYSIWYG editor. Webový editor MS Expression Web 3 podporuje standardy HTML/XHTML, XML/XSLT, CSS, JavaScript či ASPX. Jeho hlavním zaměřením je prostředí „ASP .NET“, proto je možné vytvářet soubory typické pro „ASP.NET“ jako jsou „Master Page“, „Site Map“ či „Web Configuration“. Web 3 podporuje validaci kódu, zvýrazňování syntaxe a další užitečné funkce webových editorů. Web 3 je součástí balíku řešení Microsoft Expression Studio a spolu s nástroji Expression Design či Expression Blend tvoří ucelený nástroj na tvorbu webových stránek. (Microsoft, 2009) Nástroj je koncipován s ohledem na maximální uživatelskou přívětivost. Pracovní plocha je celkem přehledná, tak jak jsme ostatně zvyklí z produktů MS Office. Tlačítka a panely jsou po ruce a přehledně uspořádány, levý sloupec nabízí vlastnosti jednotlivých elementů i stránky samotné. Na druhou stranu, Web 3 nadále generuje „inline“ styly bez ohledu na optimalizaci, vlastnosti stránek nabízí zastaralé konstrukce a validátor stránek počítá pouze s omezenou definicí dokumentů. Nástroj pracuje s technologií SuperPreview, která slouží k testování a prohlížení webových stránek současně v několika webových prohlížečích jako je Internet Explorer 6, IE7, IE8 či Firefox 3. (Němec, 2009)
Platforma Microsoft Windows® XP Service Pack 2 a vyšší, Windows Vista™, Windows 7 (Microsoft, 2009)
Ukázka uživatelského prostředí
19
Obrázek 15: MS Expression Web 3 - současné zobrazení zdrojového kódu, (Němec, 2009)
Obrázek 16: MS Expression Web 3 - vyhledávání a nahrazování řetězců, (Němec, 2009)
Vazba na CASE Podpora standardů: kontrola přístupnosti, kompatibility s IE Tabulka 8: Přehled podpory definovaných funkcí v MS Expression Web 3
Vlastní CASE funkce CASE Plug-iny Forward engineering Reverse engineering
NE NE NE NE
Tvorba dokumentace Týmová spolupráce Podpora XMI Verze UML
NE NE NE x
MS Expression Web, na rozdíl od ostatních IDE nástrojů, nepodporuje CASE. Jedniná pozorovaná vazba je podpora standardů při psaní zdrojových kódů webových stránek.
20
Cena MS Expression Web 3 149$ MS Expression Studio 3 599$ (Microsoft, 2009)
Adobe Dreamweaver CS4 Obecně o produktu Adobe Dreamweaver CS4 je čtvrtým z řady oblíbených editorů od firmy Adobe. Nástroj slouží především k tvorbě webových stránek, ale není problém využít Dreamweaver CS4 jako nástroj tvorby „Rich Internet Applications“ (RIA). Mezi podporovaná prostředí patří ASP (JavaScript, VBScript, .NET C#, .NET VB), PHP či JSP. Na rozdíl od konkurenčního prostředí MS Expression Web3 podporuje Dreamweaver vývojová prostředí Coldfusion. Editor podporuje formáty HTML/XHTML, XML/XSLT, CSS, JavaScript či ActionScript. (Adobe, 2009) Editor poskytuje výborně propracovanou pracovní plochu. Nabízí osm přednastavených rozvržení editačních oken a palet, se svým uspořádáním, připravených pro práci na dvou monitorech. Pracovní plocha obsahuje palety a nástroje jako „property inspector“, ale také například zajímavý nástroj „related files“, který zobrazí všechny externí soubory napojené na momentálně upravovaný soubor, například kaskádové styly, PHP soubory a další. Adobe Dreamweaver nabízí řadu zajímavých rozšíření. Díky nástroji „ConnectNow“ můžete sdílet vaši obrazovku v reálném čase s dalšími lidmi. Zdrojové soubory můžete sdílet pomocí rozšíření subversion. (Němec, 2008)
Platforma Microsoft Windows® XP Service Pack 2+, Windows Vista™, Windows 7, Mac OS X v10
Ukázka uživatelského prostředí
Obrázek 17: Adobe Dreamweaver CS4 - pracovní prostředí, (Němec, 2008)
21
Obrázek 18: Adobe Dreamweaver CS 4 - rozmanité pracovní nabídky, (Němec, 2008)
Vazba na CASE Podpora standardů: kontrola přístupnosti, kontrola kompatibility s prohlížeči Týmová spolupráce: Subversion, ConnectNow, Reporting
Tabulka 9: Přehled podpory definovaných funkcí v Adobe Dreamweaver CS4
Vlastní CASE funkce CASE Plug-iny Forward engineering Reverse engineering
NE ANO NE NE
Tvorba dokumentace Týmová spolupráce Podpora XMI Verze UML
NE ANO NE x
Adobe Dramweaver CS4, jako ostatní editory webových stránek, podporuje standardy při psaní zdrojového kódu. Navíc pomocí plug-inů podporuje týmovou spolupráci (ConnectNow) a reporting.
Cena Adobe Photoshop CS4 Win CZ Retail s DPH 23 359,Adobe Creative Suite 4 (CS4) Design Standard Win CZ s DPH 40 221,- (Alza, 2009)
Microsoft Visual Web Developer 2010 Beta 2 Obecně o produktu Visual Web Developer 2010 Express je součástí rodiny produktů Microsoft Visual Studio. Web Developer 2010 je nástupcem Visual Developer 2008 a obsahuje mnohá vylepšení a rozšíření původní verze. V projektové nabídce jsou hned dvě nové položky: Windows Azure tools a MS Silverlight application. Nástroj získal také nový grafický nádech, svým stylem tak zapadá do koncepce Windows 7. Obdobně jako Adobe Dreamweaver získal nástroj podporu pro zobrazení na více monitorech. (Microsoft, 2009) 22
Aplikace staví na Frameworku .NET 4 Beta 2. Nástroj podporuje tvorbu HTML/XHTML, XML/XSLT, CSS, JavaScript se zaměřením na platformu ASP .NET. Nástroj nabízí intuitivní prostředí s možností zobrazení v „basic“, „code“ a „expert“ módu. Nabídka standardních panelů, funkce jako „drag and drop“ či zvýrazňováním syntaxe je samozřejmostí. Nástroj nabízí velká množství nejrůznějších rozšíření. Ta se dají stáhnout přímo prostřednictvím aplikace v nástroji „Extension Manager“. Rozšíření se řadí do kategorií kontrolních prvků, šablon a nástrojů. Mezi nástroji stojí za zmínění nástroje pro tvorbu dokumentace, modelování, reportingu, týmové spolupráce, testování či kontroly kódu. (Vadgama, 2009)
Platforma Microsoft Windows® XP Service Pack 2+, Windows Vista™, Windows 7, Windows Server 2003, Windows Server 2008 (Microsoft, 2009)
Ukázka uživatelského prostředí
Obrázek 19: MS Visual Web Developer Express - rozložení panelů
Obrázek 20: MS Visual Web Developer Express - Extension Manager
23
Vazba na CASE Rozšíření pro: Dokumentaci, Modelování, Reporting, Týmový vývoj, Testování, Kontrolu kódu V době psaní této práce neobsahovaly kategorie žádné existující rozšíření Tabulka 10: Přehled podpory definovaných funkcí v Microsoft Visual Web Developer 2010 Beta 2
Vlastní CASE funkce CASE Plug-iny Forward engineering Reverse engineering
NE ANO NE NE
Tvorba dokumentace Týmová spolupráce Podpora XMI Verze UML
ANO ANO NE x
Microsoft Visual Web Developer 2010 Beta 2 je plnohodnotným prostředí pro tvorbu webových aplikací. Produkt podporuje některá vybraná rozšíření pro CASE. Bohužel v době psaní této práce nebyla rozšíření reálně k dispozici.
Cena zdarma
Zend Studio 7.1 Obecně o produktu Zend Studio 7 je nástrojem pro tvorbu PHP aplikací. Aplikace byla navržena tak, aby vyhovovala PHP 5.3 a podporovala Zend Framework a Server. Nástroj podporuje kompletní vývoj od dokumentů HTML/XHTML, XML/XST/DTD, CSS či JavaScript, až k webovým aplikacím postavených na knihovnách PHP a databázových spojeních. Toto prostředí nabízí pokročilé formátování zdrojového kódu s možností zvýrazňování a doplňování syntaxe, podporu týmové spolupráce založené na SVN či CVS, ladění zdrojového kódu a mnoho dalšího. Zend studio je velmi vyspělým prostředím pro tvorbu aplikací postavených na PHP. Aplikace těží předevěím ze Zend Frameworku, který je mezi vývojáři PHP aplikací velmi rozšířen. Oblíbený je především díky rozsáhlé nabídce PHP kinovem a široké podpoře ze strany uživatelů. Podpora uživatelů činí z frameworku Zend ideální prostředí pro začínající progranátory PHP. Díky rozšířšnosti PHP je Zend Studio ideálním vývojovým prostředím na vývoj webových aplikací. (Zend, 2009)
Platforma Windows x86 2000, XP, 2003, Vista (32bit), Linux x86 (32bit), Mac OS X (32bit) (Zend, 2009)
Ukázka uživatelského prostředí
24
Obrázek 21: Zend Studio 7 - rozložení panelů
Obrázek 22: Zend Studio 7 - generování dokumentace pro PHP
Vazba na CASE • • • • •
Refaktoring Generování kódu Generování dokumentace Testování Týmová spolupráce CVS, SVN
Tabulka 11: Přehled podpory definovaných funkcí v Zend Studio 7.1
Vlastní CASE funkce CASE Plug-iny Forward engineering
ANO ANO NE
Tvorba dokumentace Týmová spolupráce Podpora XMI
25
ANO ANO NE
Reverse engineering
NE
Verze UML
x
Zend Studio, IDE prostředí pro vývoj aplikací v PHP, obsahuje základní rozšíření a CASE funkce. Jedná se zejména o refaktoring kódu, tvorbu dokumentace, testování a podporu týmové spolupráce.
Cena Zend Studio 7 od 399$
Eclipse IDE Obecně o produktu Eclipse je open source komunita, jejíž projekty jsou zaměřené na stavbu otevřené vývojové platformy, zahrnující systém pro rozšíření, nástroje a runtime pro vývoj, nasazení a řízení softwaru během jeho životního cyklu. Projekt Eclipse byl založen firmou IBM v roce 2001 a podporován konsorciem softwarových dodavatelů. Od roku 2004 se o něj stará nadace Eclipse. Veškeré záležitosti, ať již třeba samotná vývojová Eclipse platforma, jsou vždy brány jako projekt. IDE Eclipsu umožňuje vývoj v jazycích Java, C, C++, COBOL, Python, Perl, PHP a jiných. Z pohledu návaznosti na CASE nás tedy zajímají projekt EMP a vybrané plug-iny. Nutno zmínit, že kromě jádra Eclipsu, vše ostatní tvoří plug-iny a proto je jich nesmírné množství a Eclipse je tak možné využívat k nejrůznějším účelům a přizpůsobovat si ho podle sebe. (Wikipedie, 2009)
Platforma Windows®, LinuxTM, Mac OS X, Solaris AIX, a HP-UX.
Ukázka uživatelského prostředí
26
Obrázek 23: Eclipse SDK
Vazba na CASE Základem modelováni v Eclipse je EMP Eclipse Modelling Project. Ten se stará o veškeré modelovací možnosti Eclipse IDE. Nejrozšířenějším je nejspíše EMF (Eclipse Modelling Framework) projekt, což je modelovací a kód generovací funkce pro vývojové nástroje, založené na strukturálním datovém modelu. Funguje za pomocí XMI (XML Metadata Interchange) a umožňuje spolupráci s širokým portfoliem nejrůznějších rozšíření nejen pro CASE nástroje. (Eclipse, 2009)
Pluginy: UML (31 plug-inu) •
eUML2 o o o o o
Pokročilý reverse engineering Silné analytické nástroje UML Profil a MDD Databázové nástroje Podpora upravitelných šablon
27
Modelování (60 plug-inu) •
• • • • •
Apollo for Eclipse o Robustní a flexibilní modelovací rozšíření Eclipse pro vývojáře a programátory k dynamickémů vytváření a upravování modelů vedle kódu. Plně synchronizovaný roundtrip engineering pro Javu 5 a UML 2.1 nabízí náhledy do existujícího kódu a kvalitní dokumentaci. Je to první UML rozšíření pro Eclipse založené na GMF, EMF a UML 2 a je dokonale integrované do IDE. Je k dispozici jako samostatný nástroj nebo jako plug-in. Generic Eclipse Modeling System Altova UModel (komerční) Roundtrip engineering Sybase PowerDesigner (komerční) Papyrus (free)
Veškeré plug-iny je možné najít na Eclipse Plugin Central (EPIC), na adrese http://eclipseplugincentral.com/. Tabulka 12: Přehled podpory definovaných funkcí v Eclipse IDE
Vlastní CASE funkce
ANO
Tvorba dokumentace
ANO
CASE plug-iny
ANO (asi 90)
Týmová spolupráce
ANO
Forward engineering
ANO
Podpora XMI
ANO
Reverse engineering
ANO
Verze UML
2.2
Cena zdarma, některé pluginy mohou být placené
PHP Development Tools PHP Development Tools spadá pod projekt Eclipse ze kterého vychází celá jeho funkčnost. Tento nástroj je primárně stvořen pro tvorbu webových stránek v programovacím jazyku PHP a webových jazycích HTML, CSS a JS.
Info o produktu • • • • • • • • • • •
(X)HTML, CSS a JavaScript editor Verzování projektů Debugování FTP připojení SQL připojení Zvýraznění syntaxe HTML, CSS, JavaScript, PHP Knihovny kódů Správa projektů Nespočet pomůcek typických pro projekt Eclipse, jehož funkce zároveň přebírá. Projekt PDT poskytuje vývojové nástroje PHP frameworku pro platformu Eclipse. Vývojové platformy: 28
Web Tools Platform (WTP) Dynamic Languages Toolkit (DLTK) PDT rozšíření využívá: o Zend studio o Project Zero - IBM Rest Development Framework o APDT - PHP Aspect o Smarty for PDT (Google Code) http://www.eclipse.org/pdt/ o o
•
•
Obrázek 24: GUI PHP Development tools
Platforma • • • • • •
Windows 32-bit Linux x86/GTK 2 32-bit Linux x86/GTK 2 64-bit Mac OSX Cocoa 32-bit Mac OSX Cocoa 64-bit Mac OSX Carbon
Cena zdarma 29
Možnosti vazby na CASE: Vazby na CASE tohoto produktu vycházejí z Eclipse.
Tabulka 13: Přehled podpory definovaných funkcí v PHP Development Tools
Vlastní CASE funkce CASE Plug-iny Forward engineering Reverse engineering
Ano Ano Ano Ano
Tvorba dokumentace Týmová spolupráce Podpora XMI Verze UML
Ano Ano Ano 2.2
NetBeans Obecně o produktu NetBeans IDE je open source projekt, který vznikl za sponzoringu firmy Sun Microsystems. Od roku 2000 je uvolněn pod open-source licencí a převážně je vyvíjen v pražské pobočce Sun Microsystems. Projekt se dělí na dva a to na vývojové prostředí NetBeans IDE a na vývojovou platformu NetBeans Platform. Je napsáno v jazyce JAVA a je primárně určeno pro vývoj na tomto jazyce. Může ale podporovat například C, C++, PHP, Ruby. Aktuální verze je NetBeans IDE 6.7 (29. června 2009). (Wikipedia, 2009)
Platforma Windows, Linux, Mac OS X a Solaris
30
Ukázka uživatelského prostředí
Obrázek 25: NetBeans IDE 5.5
Vazba na CASE NetBeans nenabizi vlastni UML nástroj, nástroj, ale úzce spolupracuje s Visual Paradigm. Paradigm Pluginy: Applied Models MDA – rozšíření podporující modelovací jazyky typu UML, CWM, MOF, UIM nebo si dokonce můžete nadefinovat vlastní. Podporuje Round-Trip Round Trip engineering. Je zdarma pro modely do 100 prvků. MagicDraw UML – UML modelování a CASE nástroj s podporou týmové spolupráce. Nabízí generování kódu, modelování datových schémat, generování DDL a reverse engineering. Podporuje také XMI import pro otevření jakéhokoliv zdroje. Funguje na jakékoli platformě, která podporuje Javu.
Tabulka 14:: Přehled podpory definovaných funkcí v NetBeans
Vlastní CASE funkce
ANO
Tvorba dokumentace
ANO
CASE plug-iny
ANO
Týmová spolupráce
ANO
Forward engineering
ANO
Podpora XMI
ANO
31
Reverse engineering
ANO
Verze UML
2.2
Cena zdarma, některé pluginy mohou být placené
Rapid SQL Info o produktu •
• • • • • • • • • • • •
• • •
Rapids SQL IDE s podporou Java to SQL round-trip debugging, kontrola chyb v reálném čase. Rapid SQL Developer nabízí možnost připojení s IBM® DB2® pro LUW, Oracle®, Microsoft® SQL Server, Sybase® a JDBC. Rapid SQL Developer je dostupný jako samostatná aplikace, nebo plugin do Eclipse. Server: Sybyse ASE 12,5 a 15.x, Oracle, 8i, 9i, 10g a 11g, MS SQL Server 2000, 2005 a 2008, IBM DB2 LUW, IBM DB2 for OS/390 z/OS8.x a 9.x, MySQL 4.x Code assist Vyhledávání chyb v kódu Debuging – pouze v Professional edition Správa schémat Zvýraznění syntaxe Vyhledávání a nahrazování SQL Programming IDE - Produktivní generování kódu Správa projektů a customizace šablon kódu Kontrola syntaxe, automatické dokončování kódu, klávesové zkratky Debugging - (pouze v Professional edition) debuggování objektů, procedur, funkcí a triggerů Kontrola verzování. Integrovatelný s většinou commerčních verzovacích technologií (e.g., Microsoft SourceSafe, PVCS, Clear Case, and Perforce). Podporuje veškeré operace, jako je get, checkout, check-in, history a diff. Repository zdrojového kódu. Prostředí pro správu databáze a převod objektů do offline repository, tak aby vývojáři nemuseli pracovat s live databází. Database Project Management - Schopnost pracovat s offline SQL zdrojovým kódem místo připojení k live databázovým stanicím. http://www.embarcadero.com/products/rapid-sql/
32
Obrázek 26: GUI Rapid SQL
Platforma •
•
Rapid SQL o Windows 2000 o Windows 2003 o Windows XP o Windows Vista Rapid SQL Developer o Windows 2003 o Windows XP o Windows Vista o Red Hat Enterprise o Suse o Sun Java 2 Standard Edition
Cena Standard edition - 876.00EUR Professional edition - 1,254.00EUR
Možnosti vazby na CASE: 33
•
Podpora reverse-engineering. Z live databáze načtě zdrojové kódy do Rapid SQL projektu a zobrazí schéma fyzického modelu databáze.
Tabulka 15: Přehled podpory definovaných funkcí v Rapid SQL
Vlastní CASE funkce CASE Plug-iny Forward engineering Reverse engineering
Ne Ano Ne Ne
Tvorba dokumentace Týmová spolupráce Podpora XMI Verze UML
Ne Ano Ne x
RAD Studio 2010 Info o produktu • • •
Embarcadero® RAD Studio 2010 je účinná aplikace pro vývoj data-driven end-user aplikace pro Windows a .NET. RAD Studio zahrunuje Delphi, C++Builder a Delphi Prism Aplikace je poskytována ve 3 verzích: Professional, Enterprise a Architect
(Embarcadero Technologies RAD, 2009)
Obrázek 27: GUI RAD Studio 2010
34
Platforma •
.NET aplikace pro o Windows 7 o Windows Vista o Windows X o Windows 2000
Cena • • •
CodeGear RAD Studio 2009 Architect - 4299 Eur CodeGear RAD Studio 2009 Enterprise - 2799 Eur CodeGear RAD Studio 2009 Professional - 1399 Eur
(Embarcadero Technologies RAD, 2009)
Možnosti vazby na CASE: • •
UML Code Visualization– náhled UML modelu v reálném čase Sequence diagrams, Collaboration diagrams, State charts, Deployment diagrams, Use case diagrams, Activity diagrams, Component diagrams, generování dokumentace, 80+ Code Metrics, 200+ Code Audits, Import model from Rational® Rose, Language neutral UML 1.5 modeling, Language neutral UML 2.0 modeling, Design Patterns support, including GOF patterns, Diagram printing, XMI 1.1 Import/Export, Plná podpora oboustranné synchronizace class diagramu mezi kódem a diagramy, podpora OCL 2.0
Tabulka 16: Přehled podpory definovaných funkcí v RAD Studio 2010
Vlastní CASE funkce CASE Plug-iny Forward engineering Reverse engineering
Ano Ano Ano Ano
Tvorba dokumentace Týmová spolupráce Podpora XMI Verze UML
Ano Ano Ano 1.5, 2.0
Macromedia HomeSite Info o produktu • •
Vývoj tohoto nástroje byl přerušen k 26. květnu 2009. Stávající zákazníci byli vyzváni k přechodu do vývojového prostředí Adobe Dreamweaver CS4 software.
(Adobe Systems Incorporated, 2009)
HTML Pad 2010 Info o produktu Jedná se o velmi šikovný nástroj pro psaní v (X)HTML, CSS, JS kódování, programování v PHP, ASP, Perl, či značkovací jazyk XML. Tento nástroj není sice určen pro vývoj rozsáhlých 35
projektů, ale ocení ho především freelanceři či malé skupiny programátorů kterým jistě bude vhod relativně nízká cena. • • • • • • • • • • • • • • • • • • •
HTML, CSS, JavaScript a XHTML editor Výhody plné customizace Zvýraznění syntaxe HTML, CSS, JavaScript, VBScript, PHP, ASP, WML, XML, Perl Validace dle standardů HTML, XHTML a CSS Podpora kódování Unicode UTF-8 a UTF-16 Pokročilé editování CSS kódu s pomocí vestavěného CSS editoru Pokročilé editování JavaScriptu s pomocí vestavěného JavaScript editoru Automatické dokončování HTML tagů Automatické dokončování CSS Okamžitý náhled HTML a CSS Generování kódu a pomocník Knihovny kódů Správa projektů Přímé FTP a SFTP připojení Kontrola pravopisu Podpora šablon znovupoužitelného kódu Vyhledávání, nahrazování, regulární výrazy Integrace CSE HTML Validatoru Nespočet pomůcek jako je zvýraznění závorek, zvýraznění aktuální řádky, přehledné odsazování textu
(Blumentals Software, 2009)
Obrázek 28: GUI Macromedia HomeSite (Blumentals Software, 2009)
36
Uživatelské rozhraní je velmi intuitivní a podobné konkurenčním nástrojům v jeho layoutu. To zajišťuje snadnou práci i bez prvotního studování manuálů.
Platforma • • • • •
Windows 2000 Windows 2003 Windows XP Windows Vista Windows 7
Cena • •
HTMLPad 2010 Pro - $45.85 o Pro profesionální využití vývojáři, společnostmi a národními organizacemi. HTMLPad 2010 Pro Personal License - $35.85 o Pro osobní nekomerční využití studenty či samostatnými osobami.
Možnosti vazby na CASE: Tento vývojový nástroj nepodporuje propojení CASE funkcionality.
Tabulka 17: Přehled podpory definovaných funkcí v HTML Pad 2010
Vlastní CASE funkce CASE Plug-iny Forward engineering Reverse engineering
Ne Ne Ne Ne
Tvorba dokumentace Týmová spolupráce Podpora XMI Verze UML
Ne Ne Ne X
oXygen XML Editor Info o produktu Jedná se o XML editor, který je využíván jak začátečníky, tak i pokročilými uživateli. Nabízí řadu funkcí pro vytváření a úpravu dokumentů XML. Umožněno je tak uživatelům např. výměna dat mezi aplikacemi, vytváření dokumentů s popisem dat a další. Své využití nachází také při tvorbě aplikací. Dovoluje totiž zachytit strukturu a vztahy mezi elementy, přitom jim ale nepřiděluje žádnou vizuální reprezentaci. Konkrétně Oxygen XML editor, je hodnocen jako jeden z nejlepších. Umožňuje provádět validaci dokumentů podle schématu. Pro účely ověření, mohou být dokumenty validovány oproti DTD, W3C XML schématu, RELAX NG, Schematron, NRL a NVDL schémat. Jako jediný nástroj XML podporuje všechny jazyky XML schéma (SyncRO soft ltd, 2009).
XML Editor je možné použít napříč všemi hlavními operačními systémy a může být použit jednak jako samostatně, nebo jako plugin v Eclipse.
37
Obrázek 29: GUI oXygen XML Editor
Klíčové vlastnosti: • • • • • • • • •
XML IDE Inteligentní XML editace Validace XML Modelování XML schémat Podpora ra XSL/XSLT, XQuery, XPath Nativní XML a relační databáze Podpora pro vzdálenou editaci Funkce sledování změn Podpora dokumentů MS Office
(SyncRO soft ltd, 2009)
Platforma Windows, Mac OS X, Linux, Solaris
Cena Od 4 030Kč do 70 270Kč v závislosti na typu licence (SyncRO soft ltd, 2009)
38
Možnosti vazby na CASE Vazbou IDE podporující jazyk XML na CASE, jsou nástroje podporující generování zdrojového kódu. Je možné generovat zdrojové kódy pro programovací programovací jazyky, webové stránky a další. Tabulka 18:: Přehled podpory definovaných funkcí v oXygen XML Editor
Vlastní CASE funkce CASE Plug-iny Forward engineering Reverse engineering
Ne Ano Ne Ne
Tvorba dokumentace Týmová spolupráce Podpora XMI Verze UML
Ano Ne Ne x
Altova XML Spy Info o produktu Jedná se o další skvělý editor XML. Dodáván je ve třech verzích, aby vyhovoval každému vzhledem k funkcím i rozpočtu. Altova XML Spy představuje vývojové prostředí pro modelování, úpravy, y, transformaci a ladění XML dokumentů. Pro uživatele nabízí přední návrhové schéma, generátor kódu, transformaci souborů, plnou integraci s databázemi, podporu pro XSLT, XPath, XQuery, WSDL, SOAP, XBRL a Office Open XML (OOXML) dokumenty. Možné je také použít použít ve formě pluginů pro Visual Studio a Eclipse (Altova, 2009).
Obrázek 30: GUI Altova XML Spy
Další vlastnosti • • •
Grafické editování WSDL 2.0 editace Generování kódu Java / C# / C++ z XML schémat 39
• •
JSON (JavaScript Object Notation) editor a JSON <=> XML konverze Integrace s relačními databázemi
(Altova, 2009)
Platforma Windows, Mac OS, Linux
Cena • • •
Standard 3 400Kč Professional 10 530Kč Enterprise 21 100Kč (Altova, 2009)
Možnosti vazby na CASE Možnost generování kódu v různých programovacích jazycích pro XML aplikace. Tabulka 19: Přehled podpory definovaných funkcí v Altova XML Spy
Vlastní CASE funkce CASE Plug-iny Forward engineering Reverse engineering
Ne Ano Ne Ne
Tvorba dokumentace Týmová spolupráce Podpora XMI Verze UML
40
Ano Ne Ne x
3. Porovnání (CASE/IDE - vzájemná podpora; IDE/definovaná kritéria) Množiny funkcí reprezentující návaznost na CASE vs. jednotlivé IDE Tabulka X: Porovnání IDE a jejich vazeb na CASE
IDE/Vazby CASE
Vlastní CASE funkce Ne Ano Web Ne
SharpDevelop Visual Studio 2010 Microsoft Visual Developer 2010 Beta 2 MS Expression Studio (Web) 3 Adobe Dreamweaver CS4 HTML Pad PsPad Zend Studio 7.1 PDT Eclipse NetBeans Oxygen (XML) Altova XML Spy Delphi JDeveloper 11g Rapid SQL 7.6.4. RAD Studio 2010
CASE iny
Plug- Forward Reverse engineering engineering
Tvorba dokumentace
Týmová spolupráce
Podpora XMI
Verze UML
Ano Ano Ano
Ne Ano Ne
Ne Ano Ne
Ne Ano Ano
Ne Ano Ano
Ne Ano Ne
x 2.2 x
Ne
Ne
Ne
Ne
Ne
Ne
Ne
x
Ne Ne Ne Ano Ne Ano Ne Ne Ne Ano Ano Ne Ano
Ano Ne Ne Ano Ano Ano Ano Ano Ano Ano Ano Ano Ano
Ne Ne Ne Ne Ne Ano Ano Ne Ne Ano Ano Ne Ano
Ne Ne Ne Ne Ne Ano Ano Ne Ne Ano Ano Ne Ano
Ne Ne Ne Ano Ne Ano Ano Ano Ano Ano Ano Ne Ano
Ano Ne Ne Ano Ne Ano Ano Ne Ne Ano Ano Ano Ano
Ne Ne Ne Ne Ne Ano Ano Ne Ne Ano Ano Ne Ano
x x x x x 2.2 2.2 x x 2.0 2.2 x 1.5, 2.0
41
Zdroje Adobe. 2009. ADOBE DREAMWEAVER CS4. http://www.adobe.com/. [Online] 2009. http://www.adobe.com/cz/products/dreamweaver/. Adobe Systems Incorporated. 2009. Macromedia HomeSite. [Online] Adobe Systems Incorporated, 2009. [Citace: 22. Listopad 2009.] http://www.adobe.com/products/homesite/. ALTOVA. 2009. ALTOVA. UML Integration with Microsoft® Visual Studio®. [Online] 2009. [Citace: 19. 12 2009.] http://www.altova.com/umodel/uml-with-visual-studio.html. Altova. 2009. Altova XMLSpy. [Online] 2009. [Citace: 20. Listopad 2009.] http://www.altova.com/xmlspy.html. —. 2009. The ALTOVA online shop. [Online] 2009. [Citace: 20. Listopad 2009.] https://shop.altova.com/pricelist.asp. Alza. 2009. Adobe. http://www.alza.cz/. [Online] 2009. http://www.alza.cz/adobe/v1491.htm?kampan=adwords&gclid=CPGni7irp4CFUOFzAod31i3lg. autor_neznámý. CASE nástroje. [Online] [Citace: 27. prosinec 2009.] http://www.assembla.com/spaces/bowling/documents/dYii6wi78r3R9peJe5afGb/download /CASEnastroje.pdf. Blumentals Software. 2009. HTMLPad. [Online] 2009. [Citace: 23. Listopad 2009.] http://www.blumentals.net/htmlpad/. Corporation, Microsoft. 2009. Microsoft Visual Studio. How to buy Microsoft Visual Stuio. [Online] 2009. [Citace: 20. 12 2010.] http://www.microsoft.com/visualstudio/enus/howtobuy/default.mspx. Eclipse. 2009. Eclipse Modeling Project. [Online] 2009. [Citace: 5. 12 2009.] http://www.eclipse.org/modeling/. Embarcadero. 2009. Delphi 2010. Embarcadero Technologies. [Online] 2009. [Citace: 21. prosinec 2009.] http://www.embarcadero.com/products/delphi. —. 2009. Delphi 2010 Feature Matrix. Delphi 2010. [Online] 2009. [Citace: 21. prosinec 2009.] http://www.embarcadero.com/products/delphi/Delphi-Feature-Matrix.pdf. —. 2009. Dephi Datasheet. Embarcadero Technologies. [Online] 2009. [Citace: 21. prosinec 2009.] http://www.embarcadero.com/products/delphi/Delphi-Datasheet.pdf. Embarcadero Technologies RAD. 2009. Rapid Application Development Software. [Online] 2009. [Citace: 22. Listopad 2009.] http://www.embarcadero.com/products/rad-studio. EPIC. 2009. Eclipse plugins resource center and marketplace for Eclipse and Plugin Ecosystem. Eclipse Plugin Central. [Online] 2009. [Citace: 5. 12 2009.] http://www.eclipseplugincentral.com/. Fiala, Jan. 2009. Textový editor PSPad. PSPad. [Online] 2009. [Citace: 20. prosinec 2009.] http://www.pspad.com/cz/. Hallogram Publishing. 2004. SDE for JDeveloper. Hallogram Publishing. [Online] 2004. [Citace: 27. prosinec 2009.] http://www.hallogram.com/sdejdeveloper/sdejdeveloper.html#mod. I3 Design. Constructor MDRAD. Constructor MDRAD. [Online] [Citace: 20. 12 2009.] http://www.i3design.co.uk/. IBM. 2009. IBM. Rational Rose Developer for Visual Studio. [Online] 2009. [Citace: 20. 12 2009.] http://www01.ibm.com/software/awdtools/developer/rose/visualstudio/index.html. 42
IC#Code. 2009. IC#Code. The Open Source Development Environment for .NET. [Online] 2009. [Citace: 20. 12 2009.] http://www.icsharpcode.net/OpenSource/SD/. Komix. Vyberte správný CASE - Stopařův průvodce CASE nástroji. Komix. [Online] [Citace: 28. prosinec 2009.] http://www.komix.cz/cs-CZ/Tisk/Clanky/Historie/Spravny_CASE.aspx. Kotlík, Tomáš. OMG XMI. [Online] [Citace: 7. 12 2009.] http://nb.vse.cz/~zelenyj/it380/eseje/xkott02/xmi.htm. Microsoft. 2009. MS Expression. www.microsoft.com. [Online] 2009. http://www.microsoft.com/expression/. —. 2009. MSDN. Visual Studio Extensibility. [Online] 2009. [Citace: 22. 12 2009.] http://msdn.microsoft.com/en-us/vsx/dd632934.aspx. —. 2009. Web. http://www.microsoft.com/. [Online] 2009. http://www.microsoft.com/express/Web/. ModelMaker Tools. 2009. ModelMaker Tools: Delphi and C# .Net Refactoring & UML modeling. ModelMaker Tools. [Online] 2009. http://www.modelmakertools.com/. Němec, Luboš. 2008. Adobe Dreamweaver CS4. http://www.grafika.cz/. [Online] 5. 6 2008. http://www.grafika.cz/art/webdesign/dwcs4.html. —. 2009. Microsoft Expression Web 3. http://www.grafika.cz/. [Online] 3. 8 2009. http://www.grafika.cz/art/webdesign/expressionweb3.html. NetBeans. 2009. NetBeans. [Online] 2009. [Citace: 10. 12 2009.] http://netbeans.org/. Objekty VŠE. 2009. Objekty - Metodiky a Notace-terminy. Objekty - Objektová analýza, návrh a programování. [Online] 2009. [Citace: 23. prosinec 2009.] http://objekty.vse.cz/Objekty/MetodikyANotace-terminy. Oracle. 2009. Build a Web Application with JDeveloper 11g Using EJB, JPA, and JavaServer Faces. Oracle. [Online] 2009. [Citace: 27. prosinec 2009.] http://www.oracle.com/technology/obe/obe11jdev/11/ejb/ejb.html. —. 2009. FAQ - Oracle JDeveloper and ADF 11g. Oracle. [Online] 1. červenec 2009. [Citace: 22. prosinec 2009.] http://www.oracle.com/technology/products/jdev/htdocs/jdeveloper11gfaq.html#L0. —. 2009. Oracle JDeveloper 11g (11.1.1.2.0) (Build 5536). Oracle. [Online] 2009. [Citace: 29. prosinec 2009.] http://www.oracle.com/technology/software/products/jdev/htdocs/soft11.html. —. 2009. Oracle JDeveloper and ADF 11g Release 1 Patch Set 1 (11.1.1.2.0) New Features. Oracle. [Online] 10. listopad 2009. [Citace: 22. prosinec 2009.] http://www.oracle.com/technology/products/jdev/collateral/papers/11/newfeatures/index. html. —. 2004. Statement of direction. Oracle. [Online] 2004. [Citace: 27. prosinec 2009.] http://www.oracle.com/technology/products/jdev/collateral/papers/10g/uml_mda_sod.pdf . Sparx. 2009. Sparx Systems. Visual Studio MDG Integration. [Online] 2009. [Citace: 12. 20 2009.] http://www.sparxsystems.com.au/products/mdg/int/vs/index.html. SyncRO soft ltd. 2009. oXygen XML editor. [Online] 2009. [Citace: 20. Listopad 2009.] http://www.oxygenxml.com/. —. 2009. oXygen XML editor - buy now. [Online] 2009. [Citace: 20. Listopad 2009.] http://www.oxygenxml.com/buy.html. Vadgama, Jalpesh P. 2009. Review of Microsoft Visual Web Developer 2010 beta 2 express edition. http://jalpesh.blogspot.com. [Online] 27. 10 2009. http://jalpesh.blogspot.com/2009/10/review-of-microsoft-visual-web.html. 43
Wikipedia. 2009. Embarcadero Delphi. Wikipedia. [Online] 2009. [Citace: 20. prosinec 2009.] http://en.wikipedia.org/wiki/Embarcadero_Delphi. —. 2009. JDeveloper. Wikipedia. [Online] 2009. [Citace: 21. prosinec 2009.] http://en.wikipedia.org/wiki/JDeveloper. —. Microsoft Visual Studio. Wikipedie. [Online] [Citace: 15. prosinec 2009.] http://cs.wikipedia.org/wiki/Visual_Studio. —. 2009. NetBeans. Wikipedia. [Online] 2009. [Citace: 10. 12 2009.] http://en.wikipedia.org/wiki/NetBeans . Wikipedie. 2009. Eclipse. Wikipedie. [Online] 2009. [Citace: 5. 12 2009.] Zend. 2009. Studio. http://www.zend.com/. [Online] 2009. http://www.zend.com/en/products/studio/.
Seznam obrázků Obrázek 1: Forwar engineering .................................................................................................. 4 Obrázek 2: Reverse engineering ................................................................................................ 5 Obrázek 3: Round-trip engineering ............................................................................................ 5 Obrázek 4: Visual Studio 2010 ................................................................................................... 7 Obrázek 5: EA Prohlížeč projektu ve Visual Studiu .................................................................... 8 Obrázek 6: Možnost synchronizace kódu a modelu .................................................................. 9 Obrázek 7: Integrace Umodelu do Visual Studia...................................................................... 10 Obrázek 8: Možnosti funkcí Umodelu ...................................................................................... 10 Obrázek 9: Object-Oriented Model Driven Development Schema.......................................... 11 Obrázek 10: Sharp Develop 3.1 ................................................................................................ 12 Obrázek 11: ClassCanvas – SharpDevelop ............................................................................... 13 Obrázek 12: Delphi 2010 (založení nového projektu) .............................................................. 15 Obrázek 13: Dialog vložení nového diagramu.......................................................................... 16 Obrázek 14: Prostředí JDeveloper 11g (Oracle, 2009)) ............................................................ 18 Obrázek 16: MS Expression Web 3 - vyhledávání a nahrazování řetězců, (Němec, 2009)...... 20 Obrázek 15: MS Expression Web 3 - současné zobrazení zdrojového kódu, (Němec, 2009) .. 20 Obrázek 17: Adobe Dreamweaver CS4 - pracovní prostředí, (Němec, 2008) ......................... 21 Obrázek 18: Adobe Dreamweaver CS 4 - rozmanité pracovní nabídky, (Němec, 2008) ......... 22 Obrázek 19: MS Visual Web Developer Express - rozložení panelů ........................................ 23 Obrázek 20: MS Visual Web Developer Express - Extension Manager .................................... 23 Obrázek 21: Zend Studio 7 - rozložení panelů ......................................................................... 25 Obrázek 22: Zend Studio 7 - generování dokumentace pro PHP............................................. 25 Obrázek 23: Eclipse SDK ........................................................................................................... 27 Obrázek 24: GUI PHP Development tools ................................................................................ 29 Obrázek 25: NetBeans IDE 5.5.................................................................................................. 31 Obrázek 26: GUI Rapid SQL ...................................................................................................... 33 Obrázek 27: GUI RAD Studio 2010 ........................................................................................... 34 Obrázek 28: GUI Macromedia HomeSite (Blumentals Software, 2009) .................................. 36 Obrázek 29: GUI oXygen XML Editor ........................................................................................ 38 Obrázek 30: GUI Altova XML Spy ............................................................................................. 39
44
Seznam tabulek Tabulka 1: Přehled podpory definovaných funkcí ve Visual Studiu 2005/2008 ........................ 7 Tabulka 2: Přehled podpory definovaných funkcí v Sharp Develop 3.1 .................................. 13 Tabulka 3: Přehled podpory definovaných funkcí v PSPad ...................................................... 14 Tabulka 4: Ceny jednotlivých verzí Delphi (zdroj: (Embarcadero, 2009)) ................................ 15 Tabulka 5: modelovací možnosti Delphi (zdroj: (Embarcadero, 2009))................................... 16 Tabulka 6: Přehled podpory definovaných funkcí v Delphi 2010 ............................................ 17 Tabulka 7: Přehled podpory definovaných funkcí v JDeveloper .............................................. 19 Tabulka 8: Přehled podpory definovaných funkcí v MS Expression Web 3 ............................. 20 Tabulka 9: Přehled podpory definovaných funkcí v Adobe Dreamweaver CS4....................... 22 Tabulka 10: Přehled podpory definovaných funkcí v Microsoft Visual Web Developer 2010 Beta 2........................................................................................................................................ 24 Tabulka 11: Přehled podpory definovaných funkcí v Zend Studio 7.1..................................... 25 Tabulka 12: Přehled podpory definovaných funkcí v Eclipse IDE ............................................ 28 Tabulka 13: Přehled podpory definovaných funkcí v PHP Development Tools ....................... 30 Tabulka 14: Přehled podpory definovaných funkcí v NetBeans .............................................. 31 Tabulka 15: Přehled podpory definovaných funkcí v Rapid SQL.............................................. 34 Tabulka 16: Přehled podpory definovaných funkcí v RAD Studio 2010................................... 35 Tabulka 17: Přehled podpory definovaných funkcí v HTML Pad 2010 .................................... 37 Tabulka 18: Přehled podpory definovaných funkcí v oXygen XML Editor ............................... 39 Tabulka 19: Přehled podpory definovaných funkcí v Altova XML Spy ..................................... 40
45