Hlavní navigace

Chrome 14: kontroverzní technologie a dál nic

19. 9. 2011

Sdílet

Zdroj: Redakce

Ti, kdož od počátku kritizují krátký vývojový cyklus, si nyní mohou gratulovat. Google vydal Chrome, které obohatil o dvě zásadní technologické novinky. Bohužel nejsou na první pohled moc vidět, což ovšem jejich důležitost v důsledku nijak nesnižuje. O technologii s otevřeným zdrojovým kódem jsme si již povídali, Native Client je nicméně záležitostí čistě pro vývojáře. Díky ní prohlížeč dovede spouštět nativní kód. To znamená plnohodnotný kód, který sahá daleko za HTML a jiné webové technologie. Tak trochu jde o dalšího příživníka v prostředí, kde již operují Flash, Java nebo ActiveX.

Google podobná přirovnání nepřipouští, avšak mimo mísu určitě nejsou. Ve prospěch Native Client hovoří otevřený zdrojový kód a potenciál. Prvotní podpora počítá s programovacími jazyky C a C++, časem jich přibude víc. Tímto krokem se má ulehčit přechod od klasických aplikací k těm webovým. Je celkem jasné, že z toho má těžit Chromebook, který postrádá plnohodnotný operační systém. Pracuje se v něm pouze s prohlížečem a to je v dnešní době, byť velmi pokročilé, stále příliš omezující. Google na jednu stranu propaguje otevřený web a webové aplikace, na straně druhé ale podvádí. A neříkejte, že Native Client vám ze strany Chrome nepřipadá jako „cheatování“.

Native Client: kód v sandboxu

Uvnitř Chrome mohou běžet programy, které si v odezvě s ničím nezadají s těmi klasickými. Často se v souvislosti s čerstvou technologií zmiňují hry. A v článku Jak bude vypadat budoucí Google Chrome? jsme si již představili projekt NaClBox, jenž delší dobu testuje provoz her pro DOS. Dociluje toho tak, že hry spouští v DOSBoxu – a to všechno umožňuje „obyčejný“ webový prohlížeč. Native Client se v předchozích vydáních Chrome vyskytoval, ale nebyl z výroby zapnutý. Testeři dostali prostor a ve chvíli, kdy se novinka představuje v konečné fázi, již existují projekty, které ji využívají a fungují. Ovšem, že dvě dekády staré gamesky málokoho skutečně ohromí.

Ano, běží v emulátoru DOSBox, což si uznání zaslouží, ale oči z důlku nám mají vypadávat ve chvíli, kdy vzniknou třeba regulérní moderní hry ve 3D. A ono to půjde. Když budete chtít vykreslit 3G grafiku, přehrávat k tomu zvuky nebo hudbu, Native Client vám to umožní. V cestě nebude stát ani reakce na akce myši a klávesnice. Přímý přístup k paměti a podobné radosti vývojáře sice potěší, ale zároveň bychom se oprávněně mohli obávat zneužití takové volnosti. Vysoké riziko by pak hry a jiné aplikace nevyvážily. Google si je naštěstí vědom, co by technologie mohla způsobit, takže jí nasadil okovy.

Okovy se v tomto případě nazývají sandbox, taková virtuální ohrádka, z níž nic neuteče. Můžeme být tedy klidní, bezpečnost si společnost hlídá. Jedno z bezpečnostních opatření například aplikacím pro Native Client zakazuje zapisovat na disk. Pokud se nicméně stane něco nemilého v sandboxu, jinde v počítači se problém neprojeví. O ničem nelze tvrdit, že vždy funguje na 100 %, ale tento typ ochrany se absolutní hranici opravdu blíží. Pro upřesnění: Native Client prý používá dokonce dvojitý sandbox, avšak toto ujištění zní skoro až příliš dobře. Ačkoliv budou mít aplikace podobnou moc jako ty klasické, z hlediska bezpečnosti se zařadí a stejnou úroveň jako ty webové.

Nativně, bez zásuvného modulu

Přitom pořád platí, že k jejich funkčnosti nemusíte instalovat zásuvný modul. A to jsou docela zajímavé počty, že? Zvlášť když ani nezáleží na platformě, kde tyto výtvory budete pouštět. Windows, Linux, Chrome OS – všechny systémy s webovým prohlížečem, který Native Client podporuje, se sami sobě vyrovnávají. Ani jeden z nich najednou není výrazně lepší než druhý, alespoň z hlediska universálních aplikací. Obávat bychom se mohli Googlova diktátu. Situace zatím nebezpečně připomíná třeba Microsoft a jeho ActiveX. Oproti němu firma Larryho Page zavádí open source řešení, ale ze strany největšího konkurenta se v tomto nedá očekávat zrovna vstřícný přístup.

Microsoft bude mít Windows 8 a nativní aplikace si spojí s tímto systémem. Těžko bude podporovat platformu svého soka, byť nepřímo, tím, že akceptuje jeho technologii a zapracuje ji do svého prohlížeče. Jenže Google bude své Chrome a Chrome OS protlačovat a může tak nakonec skončit jako jediný, kdo Native Client přijal. Tím by de facto zaujal monopolní pozici a vydíral by uživatele. Tedy, za předpokladu, že by existoval dostatek aplikací, které by v prohlížeči fungovali. Zůstává otázkou, co všechno by prohlížeč měl umět – v souvislosti s danými standardy. Microsoft si své standardy kdysi vytvořil, úspěšně je protlačil a vznikl monopol.

Svázanost s jedním prohlížečem dokazuje omezení na otevírání aplikací, které dovoluje spouštět jen ty z Internetového obchodu Chrome. Informace přímo od Googlu naštěstí hovoří o tom, že se tato restrikce časem zruší. Mozilla každopádně přímé spouštění kódu v prohlížeči neplánuje, chce se soustředit na otevřené webové technologie. Byl by div, kdyby se ke Googlu někdo jiný připojil. Proti Native Clientu se vyjádřil také šéf Opery. Tímhle krokem nevytvoříme nový a otevřený web, ale naportujeme staré kódy a násilně je napasujeme do současného vývoje.

Pořádný zvuk

Druhou novinku představuje API pro zvuk. Web Audio API je standardem dostupným pro všechny, tvoří protipól Native Client. Zvuk z webu jde díky němu obohatit o různé efekty. Počítá se rovněž především s hrami, API se nebrání dynamickému upravování zvuku v prostoru a mixování audia z více zdrojů. Tahle vychytávat umí dokonce simulovat zavřený pokoj a podporuje různé efekty. Co ještě brání normálním velkým hrám, aby fungovaly v prohlížeči? Seznam nedostatků se každopádně tenčí. Zajímavých příkladů z praxe najdete na webu Googlu spoustu, za všechny vyberme povedený kulečník.

MMF24

Další vylepšení cílí na jablečnou platformu, zatímco pro Windows už nic jiného nezbylo. Měli bychom ale vnímat celý ekosystém prohlížeče, nikoliv pouze jeho. Mezi čtyřiadvaceti přidanými lokalizacemi Internetového obchodu Chrome se objevila také čeština, což našinec určitě rád uslyší. Jinak se v Chrome nic moc zajímavého neodehrálo, jen ty dvě technologie. První z nich hned o to víc vzbuzuje kontroverze. Jak se Native Client zdá vám?

Google Chrome 14: google.com/chrome
Jazyk: čeština
Podporované systémy: Windows XP – 7