Tvorba Internetových Aplikací Pomocí Technologie Microsoft Silverlight
Total Page:16
File Type:pdf, Size:1020Kb
Tvorba internetových aplikací pomocí technologie Microsoft Silverlight Bakalá Tská práce Ji Tí Kolda Vedoucí bakalá Tské práce: PaedDr. Petr Pexa Jiho 6eská univerzita v 5eských Bud Djovicích Pedagogická fakulta Katedra informatiky 2009 Prohlášení Prohlašuji, že svoji bakalá Tskou práci jsem vypracoval/-a samostatn D pouze s použitím pramen \ a literatury uvedených v seznamu citované literatury. Prohlašuji, že v souladu s § 47b zákona 6. 111/1998 Sb. v platném zn Dní souhlasím se zve Tejn Dním své bakalá Tské práce, a to v nezkrácené podob D elektronickou cestou ve ve Tejn D p Tístupné 6ásti databáze STAG provozované Jiho 6eskou univerzitou v 5eských Bud Djovicích na jejích internetových stránkách. V 5eských Bud Djovicích dne Anotace Úkolem této práce je vytvo Tit první kompletní 6esky psanou referen 6ní pTíru 6ku k internetové technologii Microsoft Silverlight. Ve výkladu je vysv Dtlována sou 6asná verze Silverlight 2.0 ve spojení s programovacím jazykem Visual C# v Microsoft .NET Framework 3.5. Sou 6ástí práce je stru 6né porovnání technologie Microsoft Silverlight s technologií Adobe Flash a otestování této technologie v nejrozší Ten Djších webových prohlíže 6ích. Abstract A goal of this work is to present the first complete refence manual for Microsoft Silverlight technology written in czech language. This essay is displaying the present-day version of Silverlight - Silverlight 2.0 along with programming language Visual C# in Microsoft.Net Framework 3.5. This paper includes a brief comparison of Microsoft Silverlight and Adobe Flash and a functionality test of the technology using the most wide-spreaded web browsers. Pod Dkování Rád bych pod Dkoval vedoucímu mé bakalá Tské práce PaedDr. Petru Pexovi za to, že mi umožnil zabývat se touto problematikou, za jeho odborné vedení a za jeho cenné rady a p Tipomínky b Dhem konzultací. Také bych rád pod Dkoval své p Títelkyni a rodin D za podporu a pomoc se zpracováním mé práce. Obsah 1. ÚVOD ........................................................................................................ 6 2. CÍLE PRÁCE ............................................................................................. 6 3. SOU 5ASNÝ STAV PROBLEMATIKY ........................................................... 7 4. METODIKA ZPRACOVÁNÍ PRÁCE ............................................................. 8 5. TEORETICKÝ ÚVOD ................................................................................. 10 6. VÝSLEDKY PRÁCE .................................................................................... 11 7. POPIS PRAKTICKÉHO SEŠENÍ .................................................................. 12 7.1. CHARAKTERISTIKA APLIKACÍ ........................................................... 12 7.2. POUŽITÉ TECHNOLOGIE .................................................................... 13 7.3. VEKTOROVÁ GRAFIKA A JAZYK XAML........................................... 13 7.4. KOMPONENTY ZAJIŠ YUJÍCÍ ROZVRŽENÍ OBJEKT [ NA SCÉN C............. 17 7.5. STYLY A ŠABLONY ........................................................................... 19 7.6. ANIMACE ......................................................................................... 22 7.7. NAPOJENÍ NA DATABÁZI POMOCÍ LINQ........................................... 27 7.8. PROBLÉMY P SI VÝVOJI ..................................................................... 33 8. ZÁV CRE 5NÉ SHRNUTÍ .............................................................................. 34 9. PSEHLED POUŽITÉ LITERATURY ............................................................. 35 10. SEZNAM P SÍLOH ...................................................................................... 36 - 5 - 1 Úvod K výb Dru tohoto tématu jsem m Dl n Dkolik d \vod \. Prvním a myslím že nejzásadn Djším d \vodem pro m D byla skute 6nost, že technologie Silverlight je prezentována jako konkurence technologii Adobe Flash. Jelikož se technologií Flash již dlouhou dobu zabývám, zajímalo m D, zda má Silverlight jako konkurent co nabídnout. Druhou v Dcí, která m D velmi motivovala k výb Dru této práce, byl fakt, že Silverlight je .NET technologií. Platforma .NET je v dnešní dob D velmi rozší Tená a hojn D používaná z d \vodu své velmi dob Te propracované a detailní dokumentace a také možnosti výb Dru jednoho z hned n Dkolika programovacích jazyk \, z nichž já osobn D jednozna 6nD volím jazyk C# p Tedevším kv \li jeho pTehlednosti. 2 Cíle práce Hlavním cílem mé práce je bylo sestavit první 6esky psanou referen 6ní pTíru 6ku popisující vytvá Tení webových aplikací pomocí technologie Silverlight. Samoz Tejm D se nejedná o kompletní dokumentaci této technologie, jelikož ta je již p Tístupná na internetových stránkách MSDN spole 6nosti Microsoft. Tato publikace si dává za cíl p Tedevším vysv Dtlit základní principy, na kterých je technologie Silverlight postavena a popsat d \ležité prvky, které se ve spojení s touto technologii nej 6ast Dji používají. Sou 6ástí práce je také p Dt ukázkových projekt \, na kterých jsou názorn D ukázány možnosti technologie a postupy p Ti Tešení nej 6ast Djších problém \, na které za 6ínající programátor narazí. Tyto projekty jsou volnD p Tístupné na webových stránkách vytvo Tených práv D za ú 6elem prezentace technologie Silverlight. - 6 - 3 Sou 6asný stav problematiky O technologii Silverlight již byla sepsána celá Tada publikací, 6lánk \, online návod \ a na oficiálních stránkách technologie se nachází také celá Tada screencast \ popisujících mnoho jejích funkcí. Bohužel však kromD jedné výjimky [13] (která se ovšem nezabývá p Tímo touto technologií a uvádí ji pouze v záv Dre 6né kapitole) nevyšla na trh žádná 6esky psaná publikace zabývající se touto problematikou. P Ti tvorb D této publikace jsem vycházel práv D z anglicky psaných návod \ a screencast \ p Tístupných na webu. P Te6etl jsem celou Tadu návod \ jak pro za 6áte 6níky, tak pro pokro 6ilejší programátory, seznámil jsem se velmi podrobn D s programovacím jazykem XAML a technologiemi Windows Presentation Foundation (WPF) a Windows Communication Foundation (WCF) a prostudoval jsem velkou 6ást dokumentace na internetových stránkách MSDN. Spole 6nost Microsoft tvrdí, že technologii Silverlight používá již asi 300 tis. uživatel \ na celém sv DtD. Pravdou je, že po 6et Silverlight aplikací velmi rychle roste, objevilo se již i n Dkolik her, otázkou však z \stává, kolik vývojá T\ na tuto technologii již definitivn D p Tešlo a pracuje v ní a kolik jich Silverlight pouze zkusilo a vrátilo se zp Dt k tomu co d Dlali d Tíve. Objevují se také názory, že k tak rychlému rozší Tení technologie Silverlight došlo jen díky obrovské reklamní kampaní ze strany Microsoft a že si Silverlight takovou popularitu nezaslouží. Osobn D si myslím, že tato technologie má zcela jist D co nabídnout, ale rozhodn D to v konkuren 6ním boji se zab Dhlou technologií Adobe Flash nebude mít lehké. - 7 - 4 Metodika zpracování práce Abych byl v \bec schopen tuto práci sepsat, bylo nejprve t Teba se pln D seznámit s celou technologií Silverlight, jejími principy a možnostmi, které nabízí. Za tímto ú 6elem jsem p Te6etl celou Tadu návod \, 6lánk \ a publikací, shlédl jsem mnoho screencast \ popisujících jednotlivá vzorová Tešení a nastudoval jsem velkou 6ást dokumentace na webu MSDN spole 6nosti Microsoft. Po nastudování všech pot Tebných nových znalostí jsem za 6al vytvá Tet jednoduché aplikace, které mi posloužily k pochopení zákonitostí a princip \, na kterých je technologie postavena. V t Dchto aplikacích jsem experimentoval s jednotlivými ovládacími prvky, jejich grafickými a logickými možnostmi a postupn D jsem tak získal p Tehled o tom, k 6emu jednotlivé prvky slouží, jak je s nimi možné manipulovat a kterými cestami je asi nejprakti 6tDjší Tešit r \zné problémy. Po této sérii experiment \ jsem za 6al vytvá Tet praktickou 6ást této práce. Vytvo Til jsem p Dt vzorových projekt \, z nichž každý názorn D ukazuje ur 6itou schopnost technologie Silverlight, a Z už se jedná o grafické prvky, animaci 6i na 6ítaní dat z databáze. P Ti výb Dru jednotlivých vzorových Tešení jsem dbal na to, aby v nich byly obsaženy ty nejzákladn Djší principy, se kterými se za 6ínající programátor setká nej 6ast Dji. Všechny projekty jsem konzultoval s vedoucím mé práce PaedDr. Petrem Pexou a shodli jsme se na jejich výb Dru. Stejná kritéria jsem posléze aplikoval p Ti výb Dru jednotlivých element \ jazyka XAML popisovaných v písemné 6ásti této práce. Ke tvorb D praktického Tešení a pro ukázky zdrojových kód \ jsem použil nástroj Visual Studio Team System 2008 spole 6nosti Microsoft. V práci je také popisován nástroj Microsoft Blend 2, který jsem rovnDž b Dhem vypracovávání práce vyzkoušel. Technologii Silverlight jsem otestoval v n Dkolika nejrozší Ten Djších prohlíže 6ích. P Ti výb Dru jednotlivých prohlíže 6\ jsem postupoval následujícím - 8 - zp \sobem. Na internetu jsem vyhledal servery zabývající se recenzemi softwarových produkt \ a na základ D hodnocení a statistických údaj \ o roz- ší Tenosti a kvalit D r \zných prohlíže 6\ jsem vybral šest aplikací, o kterých jsem bu ? p Tedpokládal, že v nich Silverlight bude podporován, nebo jsem m Dl v úmyslu to zjistit. K výb Dru také p Tisp Dly oficiální informace spole 6nosti Microsoft o podpo Te Silverlight. - 9 - 5 Teoretický úvod Spole 6nost Microsoft je poslední dobou stále více spojována s inter- netovými technologiemi. Až donedávna se p Tedevším jednalo o technologii ASP.NET, jakožto rozší Tený a silný nástroj pro tvorbu webových aplikací. S p Tíchodem nových technologií použitých ve Windows