Hlavní navigace

Silverlight 3, Internet Explorer 8 a další novinky Microsoftu

27. 4. 2009
Doba čtení: 9 minut

Sdílet

Autor: 29
Na březnové konferenci MIX09 představil Microsoft beta verze svých připravovaných produktů, jejichž vydání plánuje na tento rok. Uvedl také několik finálních verzí, jistě vám neuteklo vydání Internet Exploreru 8. Kromě IE8 se v článku zaměříme na novinky Silverlightu a na aplikaci Super Preview.

Všechny produkty uvedené na MIX09 se přímo či nepřímo točily okolo webu, což je ostatně historický trend celé konference MIX, jejíž podtitul letos zněl: The Next Web Now. Microsoft pojem web chápe v širším smyslu, nepředstavuje si pod tímto termínem pouze klasické webové technologie jako je HTML, CSS nebo JavaScript, ale řadí sem i takový Silverlight. A ten ostatně má být technologií, ve které Microsoft spatřuje budoucnost webu, a do které vkládá i své naděje.

Cesta Silverlightu na desktopy uživatelů

Microsoft dnes Silverlight jistě řadí mezi své technologie number one. Věnuje hodně energie nejen jeho vývoji, ale i propagaci.

Podle čísel Microsoftu existuje víc jak 350 miliónů instalací Silverlightu, přišlo s ním do styku na 300 tisíc vývojářů a designerů. Existuje asi 10 tisíc webů používajících Silverlight. Na všudypřítomný Flash (99 %), kterému Silverlight konkuruje, to je sice velmi málo, ale vezměme v potaz, že první finální verze Silverlightu vyšla loni v dubnu, zatímco první verze Macromedia Flash se objevila již v roce 1996, tedy na začátku celé dotcom bubliny.

Již v tuto chvíli najdeme Silverlight na řadě míst, která se nedají přehlédnout. Jmenovat můžeme web Olympijských her v Pekingu, které bylo možné online sledovat právě pomocí Silverlightu. Technologie se pravděpodobně osvědčila, protože pro Zimní olympijské hry ve Vancouveru v roce 2010 bude rovněž použit Silverlight.

Dalším zářezem pro Silverlight jistě je spolupráce s Bondi Digital Publishing, které spouští digitální archiv časopisů Rolling Stones a Playboy pomocí aplikace Cover to Cover, která je postavená na Silverlightu. (Ukázky z archivu druhého zmíněného časopisu jsou již v tuto chvíli dostupné.)

V ČR zatím příliš webů používajících Silverlight nenajdeme, ale první vlaštovky již existují; přímé přenosy na tv.hokej.cz pravděpodobně nemusíme řadě čtenářů představovat.

Technologie Silverlight tak velmi pravděpodobně nezůstane uživateli nepovšimnuta a ačkoliv její zastoupení oproti všudypřítomnému Flashi je zatím nepatrné, soudě podle energie, která je do Silverlightu vkládána, to nemusí trvat příliš dlouho.

Novinky Silverlightu 3 beta

Pojďme se ale podívat na novinky, které přináší třetí generace Silverlightu. Ty hlavní jsou na první pohled zaměřeny na dohnání konkurentů Silverlightu, tedy na Flash, ale také na klasické webové technologie, které jsou v řadě pohledů rovněž konkurenty Silverlightu.

Několik novinek se proto týká oblasti videa. Silverlight 3 nově podporuje kodeky H.264 a AAC, dokáže využít akcelerace grafických karet (bez výkonnostních problémů tak bude možné přímo na streamované video aplikovat běžné filtry) a pomocí tzv. bitstream API do něj mohou vývojáři snadno implementovat podporu dalších formátů videa a audia.

Další novinkou je možnost spouštění aplikací přímo z desktopu. Aplikaci vytvořenou v Silverlightu (která dosud musela běžet v prohlížeči) lze bez větších zásahů upravit tak, aby nabídla uživateli možnost lokální instalace. Uživatel ji pak může spouštět stejně jako desktopovou aplikaci (podobný trend můžeme již nějaký čas sledovat i u webových aplikací, viz aktivity Googlu nebo připravovaná specifikace HTML5).

Aplikace v Silverlightu měly podobný problém, se kterým zápasí i AJAXové aplikace. Uživatelé jsou zvyklí používat tlačítka Zpět, Vpřed, ukládat aktuální stránku do záložek prohlížeče atd., což nefunguje bez patřičných triků. Finální řešení pro AJAXové aplikace přináší až HTML5, v případě Silverlightu pak jeho třetí verze. Pokud má aplikace v Silverlightu 3 definované stavy, bude možné do nich přímo odkázat (např. odkázání do konkrétního dialogu aplikace, tzv. deep linking) a při ovládání aplikace bude fungovat klasická navigace pomocí prohlížeče (tlačítka Zpět, Vpřed).

Snad každého na zahraniční konferenci potěší, když zahlédne i něco z domácí dílny. To se poštěstilo i mně. Během představení novinky Virtual Earth Control pro Silverlight (rozhraní pro mapové aplikace vytvářené v Silverlightu), byla prezentována i aplikace českého startupu OnTheRoad, za kterým stojí Michal Bláha (spoluzakladatel Atlasu). Tímto způsobem lze vytvářet aplikace analogické k mapovým aplikacím Googlu, ale navíc s využitím všech zobrazovacích schopností Silverlightu.

BizSpark pro startupy

Na konferenci vystoupil i známý vývojář Joel Spolsky, spoluautor startupu Stack Overflow, který prezentoval výhody programu BizSpark. Ten je zaměřený na internetové startupy, které by chtěly používat technologie Microsoftu (typicky vývojové nástroje, ASP.NET, MS SQL), ale nemohou si to z finančních důvodů dovolit, proto zvolí technologie jiné, např. PHP a MySQL, jelikož jsou zdarma. Pokud splníte podmínky pro přijetí do programu, dostanete na tři roky zdarma licence k řadě produktů včetně těch právě zmíněných.

Expression Web a Super Preview

Rozšíření se dočká nástroj Expression Web (editor webových stránek, nástupce aplikace Frontpage) – jedná se o placený produkt. Nová verze přinese zejména vylepšené testování stránek v různých prohlížečích. Na jeho realizaci si Microsoft dal opravdu záležet a rozhodl se toto řešení vydat i v podobě samostatného produktu pod názvem Super Preview.

Nástroj bude podporovat všechny základní prohlížeče (vydaná ukázková verze zatím podporuje pouze Internet Explorer), dokáže si poradit i s rozdílem platforem (např. renderování v prohlížeči Safari bude prováděno na Mac OS X, kde jinde, že?). Náhledy stránek jsou totiž vygenerovány na serveru, se kterým aplikace komunikuje. Nejedná se ale o pouhé statické náhledy (bitmapy), nýbrž o interaktivní náhledy, které nesou informaci např. o rozměrech a pozicích jednotlivých prvků stránky. S těmi aplikace pracuje podobně jako by se jednalo o stránku zobrazenou v prohlížeči.

Mezi rutinní práci webdesignera patří porovnávání; odladí stránku v jednom prohlížeči a testuje, zda se v ostatních zobrazí stejně. Super Preview obsahuje několik nástrojů, které toto porovnání usnadní. Jedním z nich je tzv. overlay mód, který stránku vyrenderovanou ve dvou různých prohlížečích zobrazí s částečnou průhledností přes sebe. Případné problémy v rozvržení stránky jsou tak hned patrné.

V zobrazení stránek vedle sebe lze vybírat prvky stránky a promítat jejich polohu do dalších zobrazení (snadno např. vyberete nadpis zobrazený v prohlížeči A a sledujete, zda se tato poloha kryje se skutečnou polohou zobrazení v prohlížeči B atd.). Ladění webů se tak posouvá na zcela novou úroveň. Ostatně už bylo na čase – počet prohlížečů, pro které webdesigneři weby ladí, neúměrně roste a s tím i náklady.

Expression Blend 3 preview

Expression Blend je designerský nástroj pro tvorbu grafického rozhraní aplikací. Mezi novinkami je např. přímý import z programů Adobe Photoshop a Illustrator, který designery jistě potěší, a také funkce ShetchFlow, která umožní načrtnout prototyp aplikace včetně základního chování ovládacích prvků, výsledek následně předat zadavateli a posbírat od něj nazpátek připomínky (v textové i grafické podobě, zadavatel může např. navrhovat změny v rozložení ovládacích prvků, komentovat jejich chování atd.).

Azure Services Platform

Azure Services Platform je jednou z cloud platforem, se kterými poslední dobou přichází řada společností. Azure je zaměřená na Windows platformu, mj. určená k hostování ASP.NET + MS SQL aplikací. Mezi představenými novinkami najdeme podporu full-trust .NET aplikací a také podporu FastCGI, což znamená lepší podporu pro hostování PHP a jiných aplikací.

Internet Explorer 8

Své finální finální verze se dočkal i Internet Explorer. Nebudeme zde rozepisovat jeho novinky (ty již byly popsány na mnoha místech), podívejme se spíše, jak vývoj této verze probíhal.

Vývojáři se soustředili na největší slabinu Internet Exploreru a tou je nedostatečná podpora webových standardů. Mnoho let staré jádro prohlížeče bylo brzdou dalšího vývoje a vývojářům nezbylo než napsat nové zobrazovací jádro. To umožnilo pokrok v podpoře webových standardů, např. plnou podporu právě dokončované specifikace CSS2.1 a tím i kompletní splnění testu Acid2, který byl po několik let odstrašujícím příkladem zaostalosti Internet Exploreru.

Krátce před první veřejnou prezentací IE8 byla ovšem vydána další verze testu – Acid3. S tím původní plány vývojářů pochopitelně nepočítaly, a proto IE8 je v Acid3 prakticky stejně neúspěšný jako starší verze IE7. Ačkoliv to někteří komentátoři prezentují jako ukázku neschopnosti vývojářů, jádro problému v tomto případě spočívá jen v nevhodném načasování. Ostatně podobná situace nastala i u Firefoxu – test Acid 3 byl vydán ve chvíli, kdy příjem novinek do třetí verze byl již zastaven a vývojáři se s Acid testem začali „prát“ až u následující řady Firefoxu (jejíž vydání se teprve čeká).

IE8 tak v podpoře standardů sice ještě nedohnal ostatní prohlížeče, ale má rozhodně dobře našlápnuto a pokud učiní stejné pokroky i s verzí IE9, pak již mezi ním a dalšími prohlížeči nebudou v podpoře webových standardů výrazné rozdíly.

Problémy s kompatibilitou

Ovšem tímto (relativně velkým) skokem v podpoře standardů si IE vrazil nůž do zad. Řada stávajících webů totiž na chyby IE sázela a v opraveném IE8 nefungovala dobře, resp. vůbec. Ostatně loni na jaře vydaná první beta verze IE8 sklidila přesně z tohoto důvodu poměrně velkou kritiku. Jenže vysvětlujte, že problém není u vás a že se nová verze prohlížeče chová správně.

Vývojáři proto zřejmě po celý rok zkoumali, jak takové problémy minimalizovat (a zjevně zkoušeli několik cest, protože oznámená pravidla se postupně měnila). Ukázalo se, že možnost přepnutí IE8 do kompatibilního módu, ve kterém by se chová stejně jako IE7 (čili stránky v něm fungují), zkrátka nestačí. A to ani v případě, že tuto možnost dostal jak autor webové stránky (vložením speciální hlavičky do HTML nebo do odpovědi HTTP), tak uživatel a správce sítě (funkcí Compatibility View v nastavení prohlížeče).

Nakonec bylo nutné zapojit další pravidla, a sice pokud prohlížíte stránky intranetové zóny, je automaticky zapnut IE7 kompatibilní režim (weby na intranetech málokdy někdo zaktualizoval od dob pravěku), dále pokud zobrazení stránky zcela selže (výsledná stránka by byla prázdná), pokusí se prohlížeč automaticky přepnout do kompatibilního režimu.

Ovšem pravděpodobně tím nejdůležitějším kladivem na nefungující stránky je seznam nekompatibilních webů, který je distribuován v rámci Windows Update. Na takových webech se IE8 automaticky přepne do kompatibilního módu. Seznam je vytvářen Microsoftem na základě jeho vlastního průzkumu a také feedbacku od uživatelů IE8. V seznamu se objevují hlavně hojně navštěvované weby.

Pokud jste zvědavi, zda právě váš web na tomto seznamu není, můžete si tento seznam snadno zobrazit. Stačí, když do IE8 zadáte adresu res://iecompat­.dll/iecompat­data.xml (co řádek to jedna nekompatibilní doména). Pokud IE8 nevlastníte, můžete se podívat na aktuální kopii seznamu iecompatdata.xml přímo u nás.Soubor má v tuto chvíli přes 3 tisíce záznamů a najdeme v něm řadu populárních webů (např. Facebook, Youtube, Google, dokonce samotný web Microsoft.com) a také téměř deset webů z domény .cz, např. blog.cz, centrum.cz, idnes.cz, seznam.cz. Paradoxní je, že jak Idnes, tak Seznam si pomocí hlavičky HTML zpětně vynucují nové (standardní) zobrazení IE8. HTML hlavička, čili volba poskytovatele obsahu, má přednost a přebíjí nastavení od Microsoftu. Uvidíme, jak rychle Microsoft zareaguje a zda je ze svého seznamu nekompatibilních webů časem odstraní.

Jak jste mohli vidět, výsledný mechanismus „správného“ zobrazení stránek v IE8 není vůbec jednoduchý. Každopádně se práce na něm zřejmě vyplatila, protože při vydání finální verze IE8 se již žádná velká kritika na nefunkční stránky neobjevila, spíš naopak.

Microsoft a open source

Jedním z faktů, který dnes nelze přehlédnout je měnící se vztah Microsoftu k open source. Ještě před lety bychom tento vztah označili za krajně nepřátelský, dnes je tomu ovšem již jinak.

Microsoft některé své nové produkty uvádí jako open source (zpravidla pod Microsoft Public License, což je schválená licence od Open Source Initiative) a podporuje open source projekty vytvořené na základě svých technologií (viz např. portál Codeplex pro hostování projektů – jakási analogie ke Google Code).

KL24

Ostatně slovní spojení „open source“ bylo možné na konferenci MIX slyšet znovu a znovu. Často jste mohli zahlédnout prohlížeče Firefox a Google Chrome na počítačích přednášejících a možnosti videa byly předváděny na filmu Big Buck Bunny, který patří mezi chloubu světa open souce. Microsoft jde s dobou. Open source je trend, který si dnes žádná velká firma nemůže dovolit ignorovat a ty chytřejší již dávno hledají možnosti, jak tento trend využít.

Na závěr bych rád poděkoval české pobočce Microsoftu, která mou účast na konferenci sponzorovala.

Překoná podle vás Silverlight Flash?

Byl pro vás článek přínosný?

Autor článku

Autor se zabývá webovými technologiemi a programováním. Několik let působil v projektu CZilla. Vystudoval biochemii a mezi jeho koníčky patří psaní a podpora open source.
Upozorníme vás na články, které by vám neměly uniknout (maximálně 2x týdně).