Microsoft Silverlight 2.0

Microsoft Silverlight 2.0

Příloha 1: Microsoft Silverlight 2.0 Příru čka pro za čínající programátory Ji ří Kolda 2009 Obsah 1. ÚVOD ........................................................................................................ 4 1.1. CO JE SILVERLIGHT ?........................................................................ 4 1.2. SILVERLIGHT VS . ASP.NET............................................................. 5 1.3. SILVERLIGHT VS . ADOBE FLASH ...................................................... 6 1.4. HISTORIE ......................................................................................... 9 1.5. POUŽITÍ TECHNOLOGIE ..................................................................... 10 1.6. POT ŘEBNÉ ZNALOSTI ....................................................................... 12 1.7. PODPORA PROHLÍŽE ČŮ ..................................................................... 13 2. XAML..................................................................................................... 15 2.1. POPIS ELEMENT Ů POUŽITELNÝCH V SILVERLIGHT 2.0...................... 17 2.2. KOŘENOVÝ ELEMENT ....................................................................... 17 2.3. LAYOUT - ROZVRŽENÍ KOMPONENT NA STRÁNCE ............................. 17 2.4. ZÁKLADNÍ KOMPONENTY ................................................................. 22 2.5. GRAFICKÝ DESIGN ........................................................................... 26 2.6. STYLY , ŠABLONY ............................................................................. 30 2.7. ANIMACE ......................................................................................... 34 2.8. MÉDIA ............................................................................................. 42 2.9. DATA ............................................................................................... 44 3. C#............................................................................................................. 48 3.1. PROPOJENÍ C# A XAML.................................................................. 48 4. VÝVOJOVÁ PROST ŘEDÍ ............................................................................ 51 4.1. MICROSOFT VISUAL STUDIO 2008................................................... 51 4.2. MICROSOFT BLEND 2....................................................................... 54 5. PRVNÍ APLIKACE V SILVERLIGHT 2.0..................................................... 56 5.1. STRU ČNÝ POPIS PRÁCE S VISUAL STUDIO 2008................................ 56 5.2. ROZVRŽENÍ A ADRESÁ ŘOVÁ STRUKTURA ......................................... 59 5.3. SOUBOR ". XAP "................................................................................ 60 5.4. PUBLIKOVÁNÍ SILVERLIGHT APLIKACE............................................ 60 1 Úvod S p říchodem opera čního systému Windows Vista p ředstavila spole čnost Microsoft n ěkolik nových technologií. Mezi n ě pat ří nap říklad Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF) nebo Windows Workflow Foundation (WWF). Hlavním cílem technologie WPF je zjednodušení tvorby grafického vzhledu aplikací a odd ělení grafického návrhu od aplika ční logiky. Grafický design je zde založen na jazyku XAML (o n ěmž pojednává druhá kapitola), který je založen na XML technologii, a programování v n ěm je podle mého mín ění velmi jednoduché a p řehledné. Po zavedení technologie WPF za čala spole čnost Microsoft vyvíjet technologii s pracovním názvem WPF/E, jejímž ú čelem byla možnost zobrazení WPF aplikací v prohlíže či Internet Explorer. Pozd ěji se název technologie zm ěnil z WPF/E na Silverlight, a zrodila se technologie, která není jakýmsi WPF emulátorem, nýbrž je schopna pomocí speciálního pluginu využívat XAML knihoven k tvorb ě webových aplikací. 1.1 Co je Silverlight? Microsoft Silverlight je multiplatformní implementace .NET Frameworku ur čená pro tvorbu aplikací RIA a mediálních prezentací na webu. Silverlight je sou časn ě také tzv. "cross-browser" technologií, což znamená, že by m ěl být podporován všemi verzemi všech prohlíže čů dostupných v dob ě p ředstavení technologie. Tato vlastnost je samoz řejm ě limitována tím, že Silverlight je úzce spojen s opera čním systémem Windows, takže na konkuren čních opera čních systémech již není podpora zaru čena. - 4 - 1.2 Silverlight vs. ASP.NET Kdo n ěkdy vytvá řel web pomocí ASP.NET (dále jen ASP), ten p ři seznámení se s technologií Silverlight ihned pozná n ěkolik podobností. Přirozen ě je to proto, že ob ě technologie využívají platformu .NET - Silverlight využívá .NET Framework 3.0 a 3.5. V podstat ě je možno se na Silverlight dívat jako na jistou odnož ASP technologie, p řičemž m ůžeme použít následující analogii: stejn ě jako systém Windows Forms (Windows XP a starší) p řešel na Windows Presentation Foundation (Windows Vista, budoucí Windows Seven), tak z technologie ASP, využívající grafické knihovny Windows Forms, vznikla technologie Silverlight, která využívá grafické knihovny WPF. Jaké jsou tedy rozdíly mezi technologiemi ASP a MS Silverlight? Ten hlavní spo čívá ve zp ůsobu komunikace uživatele se serverem. V ASP uživatel posílá na server požadavky na jednotlivé stránky a na serveru je, aby vyrenderoval každou vyžádanou stránku podle pot řeb uživatele a odeslal mu ji jako celek, zatímco v Silverlight uživatel pracuje s jednou celistvou aplikací, přes kterou odesílá na server požadavky pouze o díl čí prost ředky. Server s t ěmito požadavky nemusí nijak manipulovat, pouze odešle uživateli p říslušná data a Silverlight aplikace je zpracuje sama. Z toho vyplívá, že v Silverlight je naprostá v ětšina dat zpracovávána na stran ě uživatele, zatímco v ASP na serveru. - 5 - 1.3 Silverlight vs. Adobe Flash Jedním z d ůvod ů vzniku technologie Silverlight byla i p římá konkurence technologii Adobe Flash (dále Flash) ze strany spole čnosti Microsoft. Nejv ětší rozdíl nalezneme nejspíše v systému animace. Flash poskytuje tzv. frame-by-frame animaci. To znamená, že pro každou zm ěnu stavu ur čitého objektu na scén ě za jednotku času je vypo čítáno, jak p řesn ě bude daný objekt vypadat na všech snímcích, které tuto zm ěnu zobrazují. Bohužel to znamená, že má-li uživatel pomalejší po číta č, pak m ůže zobrazení každého jednotlivého snímku trvat delší dobu, než by m ělo, a výsledkem je prodloužení času, který je na animaci vyhrazen. Oproti tomu Silverlight pracuje na principu stavové animace. Tento princip vyžaduje pouze ur čení po čáte čního a finálního stavu objektu a času, b ěhem kterého má být zm ěna provedena. Silverlight sám dokáže zjistit, zda bude výkon po číta če na zobrazení sta čit, a p řizp ůsobit příslušné mezistavy objektu tomu, aby zm ěna opravdu prob ěhla v zadaném čase. Obecn ě by se dalo říci, že technologie Silverlight je v mnohém jednodušší a pro vývojá ře p říjemn ější než Flash, jelikož hodn ě práce ud ělá za n ěj. Oproti tomu technologie Flash svou volností (v ětšinu práce musí obstarat sám vývojá ř) umož ňuje vytvá řet graficky i funk čně unikátní aplikace, zatímco Silverlight je odkázán na grafické možnosti jazyka XAML. Můj názor je jakousi zlatou st řední cestou. Pro grafickou stránku webové aplikace bych jednozna čně zvolil technologii Adobe Flash a pro programovou část bych použil Silverlight. Přesto však nepochybuji, že se vždy najde n ěkdo, kdo bude tvrdit, že jemu se lépe programuje ve Flashi, a zárove ň n ěkdo, komu více vyhovují grafické knihovny jazyka XAML. Naprosto stežejním p ředm ětem porovnání je také podpora video formát ů. Technologie Silverlight totiž nabídla už v první verzi možnost p řehrávání videa v HD kvalit ě, zatímto Flash tuto vlastnost nem ěl. Konkrétním kodekovým standardem, který umož ňuje technologii Silverlight p řehrávat HD video je VC-1. Dnes již spole čnost Adobe odpov ěděla na tuto novinku tím, že do Flash - 6 - Playeru za členila podporu standardu H.264, také umož ňujícího p řehrávání videa v HD rozlišení. V n ěkolika následujících odstavcích popisuji rozdíly, výhody a nevýhody jednotlivých standard ů. Výhodou VC-1 je, že umož ňuje p římo kódovat prokládané video. H.264 tuto schopnost nemá, nýbrž vyžaduje, aby p řed kódováním bylo prokládané video p řevedeno na progresivní. Tento postup pak samoz řejm ě vyžaduje více času i práce p ři manipulaci s videem. Další zásadní vlastností VC-1 je to, že pro p řehrávání (resp. dekódování) videa není zapot řebí mnoho výpo četního výkonu. Dá se říci, že za tímto účelem byl standard VC-1 spole čností Microsoft vyvíjen. Ruku v ruce s odleh čeným dekódováním jde ovšem v ětší výpo četní náro čnost p ři kódování videa. Zde VC-1 prohrává pomyslný souboj s H.264, který má o n ěco nižší nároky na kódování, ale vyšší na dekódování. Co se tý če kvality obrazu, zde se názory liší. Podle mého soudu jsou oba standardy schopny nabídnout velmi vysokou kvalitu obrazu. jak již bylo řečeno, VC-1 se snaží o co nejv ětší kvalitu p ři co nejnižší výpo četní náro čnosti p ři dekódování. Oproti tomu H.264 byl navržen hlavn ě pro široké využití v nejr ůzn ějších oblastech, má mnoho profil ů s r ůznou kvalitou obrazu, kompresním pom ěrem a výpo četní náro čností. Na záv ěr je t řeba také zmínit podporu obou standard ů na koncových za řízeních. Standard VC-1 vyhovuje hlavn ě za řízením s malým výkonem kv ůli odleh čenému dekódování. Je však t řeba říci že tento standard ješt ě není p říliž rozší řen a je v sou časné dob ě podporován p ředevším v HD-Ready televizorech a DVD p řehráva čích. Oproti tomu H.264 je již dnes velmi rozší řen, p ředevším na produktech spole čnosti Apple, Xbox 360, PSP či

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    61 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us