Windows 10 obsahuje nový webový prohlížeč. Jmenuje se Edge a je vytvořen pro moderní web, jehož obsah má mnohem blíže k plnohodnotným aplikacím, než k velké knihovně statických stránek plných textu. Jeho tvůrci jsou otevřeni novým standardům i návrhům webových vývojářů. Nové funkce má přinášet každý měsíc. Stejná verze se kompiluje jak pro procesory s architekturou x86 a x86-64, tak i pro ARM, takže ten samý prohlížeč běží jak na stolních počítačích, tak i v telefonech.
Odkud ten název je?
Microsoft Edge je technicky vzato další verze Internet Exploreru, která se ale nejmenuje Internet Explorer 12, ale Microsoft Edge. Název Edge není ničím novým. Edge bylo vždy označení pro nejnovější vykreslovací režim IE. Uvedení jména Microsoft na začátku názvu je zase požadavek marketingového oddělení. Zatímco Apple budoval jednu silnou značku, v Microsoftu si každá divize budovala značky vlastní – Windows, Office, Xbox, MSN a v poslední době Bing a Skype. Je zajímavé, že zatímco každý majitel iPhonu na otázku, kdo ho vyrobil, okamžitě odpoví, že Apple, málokterému majiteli OS Windows se mžiku vybaví Microsoft. Je dobře, že si to Microsoft uvědomuje a něco s tím dělá. Dalším důvodem, proč zrovna Edge, je ten, že začíná na písmeno E. Edge tak může mít jen mírně upravené logo. Pro mnoho lidí po celém světě je modré E symbol internetu. Měnit logo by bylo stejně neuvážené, jako odebírat nabídku Start.
Nevšední vývoj
Edge se vyvíjel pod kódovým názvem Spartan. Nejprve došlo k rozdvojení IE na dvě oddělené větve. Jedna větev pro IE se bude udržovat i nadále kvůli firemním zákazníkům, kteří na něm mají postavené své intranetové aplikace. Druhá větev pro Edge prošla výraznou modernizací. Šlo zejména o implementaci DOMu (Document Object Modelu), jehož základy byly 20 let staré. Odstranilo se 6 vykreslovacích režimů, které zajišťovaly zpětnou kompatibilitu (s weby psanými pro Netscape Navigator), a odebralo přes 300 aplikačních rozhraní, zejména ActiveX a BHO (Browser Helper Object). Podpora VBScriptu zmizela nadobro. Celkem se odebralo přes 220 tisíc řádků kódu. Tato redukce umožnila rychlejší a kvalitnější implementaci nových standardů. Například implementace všech standardů z Web Components díky tomu zabere dvakrát méně času.
Implementace DOMu prochází celkovou reorganizací architektury, která odráží dnešní podobu webu, nikoli webu, který tu byl před 20 lety. Opravilo se přes 3 tisíce nedostatků ve vykreslování a přibylo přes 45 nových standardů, například HTTP/2. Značně pokročila podpora ES6.
Jednotné jádro i univerzální prohlížeč
Není to tak dávno, kdy Internet Explorer nebyl jeden (teď nemám na mysli různá čísla verzí, nýbrž celé vývojové větve), ale existovala zvláštní větev pro Windows, samostatná odnož pro Windows Phone a extra směr pro Xbox (který šel spustit jen se zlatým členstvím Xbox Live, které bylo za měsíční poplatek). A k tomu ještě existovaly 2 verze uživatelského rozhraní. Jedno pro Desktop (klasickou Plochu) a druhé pro Moderní uživatelské rozhraní (známé též jako Metro).
S Windows 10 přichází nová éra, na které Microsoft pracoval dlouhé roky. Po sjednocení jader Windows a Windows Serveru (s Windows Vista) se podařilo (s Windows 8) sjednotit jádra Windows, Xboxu a Windows Phone. Teď (s Windows 10) se sjednotilo jádro Windows a Windows Embedded. To umožnilo vznik jednotné platformy – UPW (Universal Windows Platform). Jádro Edge je její součástí a zajišťuje vykreslování HTML s CSS a běhové prostředí pro JavaScript. Uživatelské rozhraní Edge je jinak běžná univerzální aplikace postavená na této platformě. Tím, že bude stejný Windows 10 běžet jak na PC, tak i na tabletu, telefonu nebo Xboxu, bude i Edge na všech těchto zařízeních stejný.
Častější aktualizace
Opera, Firefox i Chrome získávají podporu nových standardů po menších dávkách a mnohem častěji, než tomu bylo u Internet Exploreru. Ten se aktualizuje přes Windows Update každý měsíc, ale jedná se hlavně o bezpečnostní opravy. Nové funkce přibývaly až s novou verzí, která vycházela zhruba jednou za 2 roky. V poslední době se věci začaly měnit. Do IE 11 letos přibyla podpora pro HSTS a před rokem se zlepšila podpora WebGL, aniž by byla povýšená hlavní verze. Toto tempo však stále nebylo dostatečné.
Vydání prohlížeče, stejně jako jakéhokoli jiného značně komplexního kusu softwaru, nebrzdí fakt, že by se celý zdrojový kód pro samé úpravy dal zkompilovat jen jednou za dlouhou dobu. To byl případ Windows Vista. Největším problémem je nutnost v řádu dnů otestovat, jestli je nebo není nové sestavení prohlížeče dostatečně spolehlivé a kompatibilní.
Na měření spolehlivosti má Microsoft samostatnou laboratoř. Pro porovnání kompatibility sloužilo 9 tisíc nejnavštěvovanějších webových stránek. Toto řešení se však neosvědčilo. Web má 44 miliard webových stránek a prohlížeč by měl být kompatibilní s většinou z nich. Místo toho se využil Bing. Ten při procházení webu hledá vzorce kódu, které se nejčastěji používají. Správná interpretace vzorců prohlížečem potom zaručí kompatibilitu s mnoha stránkami. Navíc se dá kompatibilita vyhodnotit daleko rychleji. Pro představu robot denně navštíví miliony URL, měsíčně jsou to triliony.
Změnilo se chápání správné implementace standardu v prohlížeči. Správné není to, co je podle specifikace, ale to, co funguje na více webech. Specifikace má vycházet z toho, co používají vývojáři. Spekulativní pojetí vývoje se změnilo v pragmatické.
Zapomeňte také na druhé úterky v měsíci. Z kraje uvedení Windows 10 budou mít aktualizace týdenní kadenci. Postupem času by se dávkování novinek mělo ustálit na měsíčním intervalu.
Větší otevřenost vývojářům
S Edgem víte, na kterých věcech se zrovna pracuje. Nejen, že Microsoft udržuje seznam standardů i s jejich stádiem implementace, ale přibyla i záložka about:flags, ve které je možné si zapnout experimentální funkce. Jednou z nich je například asm.js. Tím si jednoduše zjistíte, co nového se v budoucnu objeví a na jaké techniky se můžete zaměřit. A pokud byste nevěděli, kde začít, hlavní portál pro vývojáře naleznete na adrese dev.modern.ie.