Flash a jak se s ním naučit žít

21. září 2001

Flash – pro některé webdesignery technologie, jejíž dny jsou zaplaťpánbůh již sečteny. Pro jiné úžasný nový svět, který právě objevili. Pro někoho každodenní výrobní nástroj. Podívejme se střízlivým pohledem na dnešní epidemii Flashe a možnosti její léčby, tak aby nás nezničila, ale posílila. Upozornění – v tomto článku nenajdete návod, jak ve Flashi vytvořit efektní hodiny s vodotryskem (to až někdy příště.)

Zrodila se nová víra

Technologii Flash se profesionálně věnuji třetím rokem. Během této doby se můj názor na ni vyvinul přes obě extrémní hodnoty až k současnému stavu „chladné hlavy“. Souběžně docházelo i k proměnám v kvalitě flashové tvorby, s níž jsem se setkával na světovém i českém webu. V době, kdy byl Flash novinkou, první dílka tvořená touto technologií byla překvapivě velmi kvalitní. Důvod je prostý – málokdo uměl s touto technologií pracovat. Pokud už někdo do studia této novinky investoval svůj čas, byl to obvykle webový profesionál, který věděl, kdy Flash použít a hlavně jak jej použít dobře. Jak se množily dostupné kursy, návody a publikace, Flash se stával masovou záležitostí a kvalita flashových výtvorů zákonitě klesala.

Dnes se nezřídka stává, že si začínající webdesigner vytvoří svou první homepage již rovnou ve Flashi a o ostatní technologie se příliš nezajímá. Flash má přece budoucnost. Zná řadu oslňujících profesionálních prezentací – jejich kvalit však nemůže dosáhnout, a tak alespoň volbou technologie docílí pocitu, že jde s dobou. Otázku, zda Flash má na jeho stránce nějaký přínos pro uživatele, si už jaksi vůbec nepokládá. Smutným výsledkem tohoto trendu pak jsou zákazníci webdesignerských firem, kteří požadují „web udělaný Flashem“, protože se v sobotní příloze denního tisku dočetli, že to je moderní.

Vzdalování světů

Jiným důvodem nekritického nadšení pro Flash byla dosud nevídaná lehkost, s jakou bylo po jeho příchodu najednou možné tvořit prezentace. Webdesigner, zmučený studiem klasických technologií (HTML, CSS, JavaScript) a nekonečným laděním svých stránek pro jednotlivé prohlížeče, mohl ve Flashi spatřovat boží spásu. S Flashem přišel uplně nový svět, v němž vše funguje tak, jak má. A všude. Tedy všude tam, kde je nainstalovaný plugin pro příslušnou verzi. Navíc je k dispozici komfortní vývojové prostředí, v němž vytvoříme úplně vše, a ostatní technologie lze klidně pustit z hlavy. Lákadlo bylo příliš silné – řada webdesignerů prostě začala tvořit kompletní weby ve Flashi.

Pro jinou část webdesignerů, střežící filozofii otevřených standardů, se stal Flash ztělesněním zla. Uzavřený svět Flashe, do kterého se vstupí značkou <OBJECT> a vystoupí značkou </OBJECT>, aniž by HTML stránka obsahovala cokoliv jiného, je popřením dlouholetého úsilí mnoha subjektů v čele s W3C o vybudování promyšlené webové infrastruktury. Slabou útěchou se stalo uvolnění formátu SWF, jeho implementace jako exportního formátu v řadě programů a vznik konkurenčních alternativ k samotnému vývojovému prostředí Macromedia Flash. Formát SWF nadále zůstává samostatným světem, hodně vzdáleným světu v podání W3C.

Využití Flashe k tvorbě celých rozsáhlých webů zaskočilo i samotnou firmu Macromedia, která původně stvořila tento nástroj pro tvorbu animovaných komponent stránek, nikoliv kompletních prezentací. Postupně tedy vycházela vstříc tomuto komplexnímu pojetí. V aktuální verzi 5 přišla s dosud největšími kroky v tomto směru – se zcela novým skriptovacím jazykem, mechanismem sdílených knihoven, s tzv. „smart clipy“ a dalšími nástroji, které přímo vybízejí k programování klientských částí složitých webových aplikací a tvorbě kompletních prezentací ve Flashi. Strážci otevřených standardů v tom vidí další krok, kterým Macromedia arogantně nabourává základní principy webu. Flash Player už dávno není jen plugin pro zobrazování animací, ale plnohodnotná platforma, vytlačující na okraj zájmu i Javu.

Sbližování světů

Podívejme se ale na vývoj Flashe optimističtějším pohledem. Zmiňovaný nový skriptovací jazyk je založen na standardu ECMA Script, tedy stejném standardu, který je základem starého známého Java Scriptu. Na první pohled je diplomaticky řečeno značně podivné mít vedle sebe dva interprety tohoto jazyka – jeden v samotném browseru a druhý v pluginu. Může to opět svědčit o tom, že Flash Player má ambice bobtnat až k úplnému nahrazení browseru. Věřme však spíše tomu, že Macromedia se chce naopak standardům přibližovat – v tomto kroku chce naučit vývojáře pracovat s průmyslovým standardem v oblasti skriptovacích jazyků, kterým se ECMA Script nepochybně stává (stejně jako se například učí zvykat si na XML jako jazyk, kterým spolu komunikují různé části webových aplikací).

Další velkou nadějí pro sbližování světa Flashe a světa otevřených standardů webové infrastruktury je i nejnovější tah firmy Macromedia na flashové frontě – implementace Flashe v browseru nikoliv klasickým vloženým objektem, ale pomocí takzvaných „behaviors“. Jedná se o mechanismus, který je zatím dostupný pouze počínaje Internet Explorerem 5.5 rozšířeným o novější verzi Flash Playeru (5.42). Behaviors se však objevují i v připravovaném standardu CSS3. Místo podrobného popisu fungování tohoto mechanismu si povězme pouze o nejviditelnějších přínosech v oblasti Flashe. Flashové komponenty stránky už nebudou prostorově omezeny obdélníkovou oblastí, v níž se dnes animace odehrávají s minimální vazbou na zbytek stránky. A především struktura objektů uvnitř flashové komponenty se stane součástí objektového modelu dokumentu (DOM) a bude ovladatelná Java Scriptem. Je zřejmé, že to velmi přispěje k dokonalejšímu integrování všech komponent stránky a ve svém důsledku to povede k účelnějšímu kombinování všech technologií. Doufejme tedy, že i díky tomu má éra webů kompletně tvořených ve Flashi svůj vrchol již za sebou, protože pomine řada důvodů, proč webdesigneři volí toto řešení.

Mimochodem, nedávné rozhodnutí Microsoftu nepodporovat nadále v Internet Exploreru technologii pluginů (pradávný vynález Netscapu) se Flashe samozřejmě netýká, protože ten je implementován komponentou ActiveX. Dosud mezi oběma konkurenčními technologiemi nebyl na první pohled žádný rozdíl. Nyní se však ukazuje větší flexibilita technologie ActiveX, která jde dále než jen k myšlence vyčlenění okénka uvnitř stránky a předání plné zodpovědnosti za jeho zobrazení pluginu. Nicméně v případě Flashe i toto bychom měli považovat za přechodný stav. Interaktivní animace, vektorová grafika a synchronizovaná multimédia byly v době vzniku Flashe třešničkou na dortě, proto bylo na místě řešení pluginem. Dnes jde však o natolik samozřejmé komunikační nástroje, že je nutné je zahrnout do základních standardů.

Konsorcium W3 tedy nelení a vyvíjí standardy SVG (Scalable Vector Graphics – finální verze 1.0 v podobě tzv. Recommendation byla schválena před dvěma týdny – 5.9.2001), SMIL (Synchronized Multimedia Integration Language) a další související technologie, které mají reálnou šanci vytlačit flashový formát SWF. Narozdíl od něj se jedná o aplikace jazyka XML, a tedy řešení ideálně zapadající do mozaiky webových standardů. Flash má stále výrazný náskok – čím dál dokonalejší vývojové prostředí a především obrovské rozšíření této technologie činí zatím její pozici neotřesitelnou. Zároveň však Macromedia musí reagovat na podněty vývojářské obce a další vnější vlivy, kterým v současnosti bohudíky dominuje snaha o promyšlenou standardizaci veškerých webových technologií pod praporem W3C. A tak věřím, že Macromedia bude směřovat k řešení, které potěší jak její prodejní oddělení, tak i vyznavače otevřených webových standardů. Kdoví, možná si za rok či dva v krabici s nápisem Macromedia Flash přineseme sadu nástrojů pro tvorbu komponent dynamického HTML, včetně SVG a SMIL, přičemž filozofie tvorby se nebude příliš lišit od dnešního Flashe. Ten totiž určitě nadlouho bude jistým měřítkem pro tvůrce vývojových prostředí pro interaktivní webové animace. Styl práce, který Macromedia nastínila svým nedokonalým Flashem, je jistě správný a i nejzarytější odpůrci Flashe uznávají, že v tom je jeho přínos.

Kudy tedy ne?

Je načase, abych uvedl, k čemu podle mě je a k čemu není vhodné dnes Flash používat. Většinou rozhodně nikoliv pro kompletní webové prezentace. Snad pouze v případě, že prezentace není založena na textu, ale výlučně na grafice, animacích a zvuku. Ale kolik takových je? Nepochybně minimum (ponechme stranou Flash coby uměleckou disciplínu). Jakmile se pustíme do flashového zpracování textu, přiděláme spoustu nepříjemností sobě i uživatelům. Nepovažuji za příliš šťastný krok obohacení práce s textem ve Flashi 5 o možnost značkování pomocí základních elementů HTML. Sice jde o možnost, která se může někdy hodit, ale řada webdesignerů tím získala mylnou představu, že konečně je možné zpracovávat ve Flashi větší množství textů, že podpora HTML uvnitř Flashe bude čím dál dokonalejší a že se webová stránka jaksi otočila naruby – už nikoliv Flash uvnitř HTML, ale HTML uvnitř Flashe. To je samozřejmě velký omyl. Pro formátování textu jsou a budou jednoznačně určeny kaskádové styly. Specifikace CSS má dnes několik stovek stránek. Srovnejme to s pár stránkami o práci s textem v manuálu Flashe a není třeba dalších argumentů. Pokud volíme celoflashové řešení webu kvůli problémům s kombinováním technologií (mít pod jednotným flashovým velením celou plochu prohlížeče je samozřejmě velmi pohodlné), pak bychom si měli uvědomit, zdali to převáží zjevné obrovské nevýhody. A zda není možné zjednodušit návrh stránek tak, aby Flashem byla řešena pouze část plochy, např. menu (s alternativou statickým obrázkem pro případ nepřítomnosti pluginu) a zbytek klasickým HTML.

www.internetradio.cz U některých stránek marně přemýšlíme, jaký měl autor důvod k použití Flashe a docházíme k jedinému možnému vysvětlení: Aby to bylo ve Flashi.

Nejsem-li příliš vstřícný k prezentacím kompletně vytvořeným ve Flashi, pak nejsem ani vstřícný k nabídce dvou alternativ na titulní stránce – Flash a HTML. Pomineme-li fakt, že uživateli by se neměla plést hlava nějakými technologiemi (někdy se proto lze setkat s volbami pojmenovanými třeba „moderní animovaná verze“ a „klasická statická verze“), zkusme se vžít do situace uživatele, který před takovou volbou stojí. Uživatel se chce především něco dozvědět, pokud možno co nejrychleji. A samozřejmě se to chce dozvědět co nejvhodnější a estetickou formou. To platí vždy a všude. Nepovažuji za dobrý nápad nutit uživatele, aby přemýšlel, zda má právě dnes čas a náladu na naše animované kreace nebo zda se chce dočíst suchá textová fakta. Všechny technologie (nejen Flash) by měly přispívat k intuitivnímu estetickému ovládání při každodenní práci. Má-li přece jen nějaká součást naší prezentace charakter jednorázové šťavnaté podívané, která by při opakovaném přehrávání zdržovala, je vhodné zpřístupnit ji odděleně samostatným odkazem. A v neposlední řadě problémy s údržbou více verzí webu mě vedou k přesvědčení, že správnou cestou je účelné kombinování všech technologií, nikoliv vývoj více verzí webu podle jednotlivých technologií (pokud už dělat více verzí, pak spíše pro různé cílové skupiny uživatelů).

Kudy vede cesta?

K čemu tedy Flash vhodný je? Jednoduchá odpověď – k tomu, co dnes nedokážeme udělat jinak. Je sice hezké, že se na obzoru rýsují dokonalejší standardy, které nám umožní obejít se bez Flashe. Dnes však obecně použitelné buď vůbec nejsou, nebo s velkými obtížemi. Než překonají dětské nemoci, nebojme se rozumně využívat zakrslý, ale přece jen dospělý Flash. K tvorbě komponent, které naši stránku oživí a zpříjemní, pro reklamní proužky a podobné materiály, pro interaktivní hříčky. Ale i pro části rozhraní „vážných“ aplikací, které nelze tak efektivně vytvořit použitím běžného HTML. A hlavně pro vyjádření informací, pro které není text jejich přirozenou formou – různé instruktážní animace a výukové programy. „Tvrdé jádro“ odpůrců Flashe často argumentuje tím, že veškerá grafika na webu je v podstatě zbytečná a pouze zvyšuje objem dat. Důležité jsou prý informace, nikoliv obal, v němž je uživatel dostane. Zapomínají však, že informace nerovná se text. Za ideální využití Flashe považuji to, když se podaří pomocí interaktivní animace předat nějakou informaci účinněji než jakýmkoliv jednodušším způsobem. Problém mnoha webů vidím nikoliv v tom, že obsahují mnoho grafické omáčky a málo textu, ale právě naopak – že jsou příliš ukecané. Jejich autoři nedokáží vyjádřit obsah jinak než sáhodlouhými odstavci textu. Většinou se marně těším, že po kliknutí na odkaz „Flash verze“ spatřím grafickou, animovanou a interaktivní alternativu k textovým informacím, ne pouze text nalitý do Flashe.

ABC news - chronologie teroristického útoku Interaktivní animace k aktuálním událostem jako doplněk zpravodajství jsou jedním z nejlepších způsobů využití Flashe.

Začínající webdesigner, který vstřebal základy HTML a CSS a stojí před rozhodnutím, jakou cestou se ubírat dál, asi řeší otázky, zda se pustit do studia Flashe nebo radši do dynamického HTML, zda počkat, jak se prosadí formát SVG, a tak dále. Těžká rada. Myslím, že pokud to čas dovolí, je ideální seznamovat se se všemi existujícími technologiemi a mít přitom neustále v povědomí pozici každé z nich v celkovém kontextu. Technologie se budou neustále vyvíjet a nám nezbývá než tento vývoj sledovat a dle potřeby přeskakovat z jedné na druhou. S jistotou lze doporučit studium ECMA Scriptu, který je už dnes mostem mezi světem Flashe a světem dynamického HTML a i do budoucna s ním lze počítat jako s jazykem, kterým se budou domlouvat veškeré objekty v rámci webové stránky. A že spolu budou skutečně čile rozmlouvat a ne jen vedle sebe mlčky sedět (čili že v architektuře klient-server bude posilovat dosud poměrně podceňovaná klientská strana) je nezvratný trend. Proto se webdesignerovi už dnes vyplatí naučit se jazyk ECMA Script skutečně dokonale, ne pouze umět si z cizích stránek vystříhat skripty a poslepovat z nich vlastní stránku, jak je dnes také běžnou praxí. Technologie se mohou měnit. Kreativita, zkušenosti a nápady na řešení uživatelského rozhraní jsou naštěstí na platformě nezávislé.

Starší komentáře ke článku

Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.

Mohlo by vás také zajímat

Nejnovější

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *