• No results found

Webove´ prohlı´zˇecˇe, te´zˇ nazy´vane´ jako browsery jsou pocˇı´tacˇove´ programy, sı´dlı´cı´ na kli-entske´m stroji. Kdyzˇ se uzˇivatel rozhodne prohlı´zˇet World Wide Webu nebo neˇjaky´ do-kument v podporovane´m forma´tu jako naprˇı´klad HTML, XHTML, XML, spustı´ jeden z teˇchto programu˚ a on mu podle svy´ch mozˇnostı´ a podporovany´ch standardu˚ zforma´tuje a zobrazı´ dokument.

Prohlı´zˇecˇe umozˇnˇujı´ komunikaci se servery sı´dlı´cı´mi na Internetu pomocı´ protokolu HTTP, dı´ky neˇmuzˇ webovy´ prohlı´zˇecˇ prˇistupuje ke vzda´leny´m dokumentu˚m, trˇeba na dru-he´m konci sveˇta.

Mohli bychom je rozdeˇlit do dvou skupin a to na prohlı´zˇecˇe textove´ a prohlı´zˇecˇe graficke´. Textove´ prohlı´zˇecˇe zobrazujı´ dokumenty jako text a to obvykle s velmi jedno-duchy´m forma´tova´nı´m. Takovy´mi programy jsou naprˇı´klad Links nebo Lynx. Na rozdı´l od textovy´ch umozˇnˇujı´ graficke´ prohlı´zˇecˇe slozˇiteˇjsˇı´ forma´tova´nı´ stra´nky vcˇetneˇ zobrazenı´

obra´zku˚. Lze v nich zobrazit neˇktere´ externı´ soucˇa´stı´ stra´nky jako jsou Flashove´ animace nebo Javove´ applety, pro ktere´ je potrˇeba do prohlı´zˇecˇe doplnit specializovane´ za´suvne´

moduly. Mezi nejzna´meˇjsˇı´ graficke´ webove´ prohlı´zˇecˇe patrˇı´ Internet Explorer, Mozilla Firefox, Opera, SeaMonkey, Konqueror a Safari.

Jednou z nejdu˚lezˇiteˇjsˇı´ch cˇa´stı´ webovy´ch prohlı´zˇecˇu˚ je ja´dro, take´ oznacˇovane´ jako renderovacı´ ja´dro. Jeho u´cˇel v prohlı´zˇecˇi je vykreslovat webove´ stra´nky a je napsa´no ve vysˇsˇı´ch programovacı´ch jazycı´ch, jako je naprˇı´klad jazyk C++. V soucˇasnosti nejpou-zˇı´vaneˇjsˇı´ ja´dra jsou Trident, Gecko a KHTML.

1.8.1 Ja´dro Trident

Na ja´drˇe Trident, drˇı´ve zna´my´ pod na´zvem MSHTML, jsou postaveny prohlı´zˇecˇe Micro-soft Internet Explorer, ktere´ jsou doda´va´ny spolecˇneˇ s operacˇnı´m syste´mem MicroMicro-soft Windows. Z tohoto du˚vodu je take´ toto ja´dro jedno z nejpouzˇı´vaneˇjsˇı´ch na cele´m sveˇteˇ.

Poprve´ se objevilo roku 1997 v Internet Exploreru 4.0 a v soucˇasnosti je ve verzi 5 soucˇa´stı´

Internet Exploreru 7.0.

Da´le se toto ja´dro nacha´zı´ v prohlı´zˇecˇi Maxthon, ktery´ se stal velmi oblı´benou alter-nativou k Internet Exloreru 6. Maxthon si nasˇel prˇı´zenˇ mezi uzˇivateli prˇedevsˇı´m pro sve´

dodatecˇne´ vlastnosti jako jsou za´lozˇky, ale hlavneˇ pro sve´ lepsˇı´ zabezpecˇenı´ nezˇ bylo u Internet Exploreru 6.

Jesˇteˇ bych zmı´nil prohlı´zˇecˇ Netscape Browser 8.0, ktery´ je vy´jimecˇny´ a zajı´mavy´

prˇedevsˇı´m pro svou schopnost prˇepı´nat mezi renderovacı´m ja´drem Gecko, ktere´ pouzˇı´vajı´

prohlı´zˇecˇe postavene´ na Mozille a ja´drem Trident.

Jako veˇtsˇina produktu˚ spolecˇnosti Microsoft je i ja´dro Trident proprieta´rnı´ nesvobodny´

software a proto jeho ko´dy jsou uzavrˇeny. Zna´me´ a pro mnohe´ vy´voja´rˇe nemile´ vlastnosti Tridentu jsou slabsˇı´ podpora webovy´ch standardu˚, existence neˇktery´ch nestandardnı´ch rozsˇı´rˇenı´ a prˇedevsˇı´m u starsˇı´ch verzı´ slabsˇı´ zabezpecˇenı´.

Kromeˇ webovy´ch prohlı´zˇecˇu˚ se ja´dro Trident, dı´ky sve´ integraci do operacˇnı´ho sys-te´mu Windows, pouzˇı´va´ jako renderovacı´ ja´dro v mnoha dalsˇı´ch komponenta´ch syssys-te´mu.

Naprˇı´klad je vyuzˇito pro na´poveˇdu v syste´mu Windows, kancela´rˇsky´ balı´k Microsoft Of-fice a Windows Explorer. Mu˚zˇe jej vyuzˇı´vat a take´ jej vyuzˇı´va´ rˇada instalovany´ch aplikacı´

nepocha´zejı´cı´ch od spolecˇnosti Microsoft.

Aktua´lneˇ je vyvı´jen Internet Explorer 8, ktery´ by meˇl by´t vyda´n ve stabilnı´ verzi koncem roku 2009 a meˇl by by´t kladen veˇtsˇı´ du˚raz na bezpecˇnost a webove´ standardy.

1 Technologie, metody a na´stroje 22

1.8.2 Ja´dro Gecko

Gecko je druhe´ nejpouzˇı´vaneˇjsˇı´ ja´dro hned po ja´drˇe Trident a jeho obliba neusta´le roste i dı´ky tomu, zˇe na rozdı´l od ja´dra Trident se Gecko rˇadı´ mezi open source projekty a je pouzˇı´va´no v mnoha dalsˇı´ch open source projektech. Bylo napsa´no v programovacı´m jazyce C++, pod licencemi MPL, GPL a LGPL. Toto ja´dro bylo pu˚vodneˇ vytvorˇeno firmou Netscape Communications Corporation, ale nynı´ je vyvı´jeno spolecˇnostı´ Mozilla Corporation.

Gecko nenabı´zı´ pouze mozˇnost renderova´nı´ webovy´ch stra´nek, ale dı´ky sve´mu boha-te´mu API slouzˇı´ i k vykreslova´nı´ graficke´ho rozhranı´ (XUL), vyuzˇı´vane´ho Firefoxem cˇi Thunderbirdem. Nenı´ zameˇrˇeno pouze na urcˇity´ syste´m, ale jedna´ se o multiplatformnı´

ja´dro. K dispozici je pro Microsoft Windows, Linux, Mac OS X a dalsˇı´.

Z du˚vodu˚ zpeˇtne´ kompatibility a podpory webovy´ch stra´nek optimalizovane´ pro stare´

verze prohlı´zˇecˇu˚ Netscape Navigator a Internet Explorer podporuje Gecko dva rezˇimy vykreslova´nı´. Pokud je v dokumentu nalezena definice Doctype, vykresluje se stra´nka

„v rezˇimu platny´ch standardu˚“. V opacˇne´m prˇı´padeˇ vyuzˇije tzv. „rezˇim zpeˇtne´ kompati-bility“, ktere´mu se take´ rˇı´ka´ quirks mo´d.

Mezi vy´znamneˇjsˇı´ programy vyuzˇı´vajı´cı´ ja´dro gecko patrˇı´ prohlı´zˇecˇe Epiphany, Ga-leon, prohlı´zˇecˇ Camino urcˇen pro Mac OS, multimedia´lnı´ prˇehra´vacˇ Songbird, posˇtovnı´

klient Mozilla Thunderbird nebo balı´k internetove´ch aplikacı´ SeaMonkey.

Aktua´lnı´ verzı´ je Gecko 1.9. Toto ja´dro je obsazˇene´ v prohlı´zˇecˇi Mozilla Firefox 3.0, ktera´ by meˇla by´t vyda´n oproti pu˚vodnı´mu pla´nu v cˇervnu. Vy´voja´rˇi Firefoxu se v poslednı´

verzi ja´dra zameˇrˇili prˇedevsˇı´m na snı´zˇenı´ pameˇt’ove´ na´rocˇnosti prohlı´zˇecˇe, cozˇ se jim meˇlo pove´st oproti starsˇı´m verzı´m o jednu trˇetinu.8

1.8.3 Ja´dro Presto

Renderovacı´ ja´dro Presto se poprve´ objevilo 28. ledna 2003 ve webove´m prohlı´zˇecˇi Opera 7.0 od firmy Opera Software, pro operacˇnı´ syste´m Windows a nahradilo tak do-savadnı´ starsˇı´ ja´dro Elektra. Je licencova´no obchodnı´m partnerem Adobe Systems a take´

integrova´no do produktu Adobe Creative Suite. Opera je distribuova´na jako freeware.

Nejveˇtsˇı´ prˇednostı´ tohoto ja´dra a tedy take´ Opery je snaha du˚sledneˇ dodrzˇovat stan-dardy konsorcia W3C. Spolu s dodrzˇova´nı´m standardu˚, dobry´m zabezpecˇenı´m, rychlostı´

8zdroj: http://blog.pavlov.net/2008/03/11/firefox-3-memory-usage/

Obra´zek 3: Snı´zˇenı´ pameˇt’ove´ na´rocˇnosti poslednı´ verze Firefox 3

a technologiı´ Small Screen Rendering se prohlı´zˇecˇ Opera (ve specia´lneˇ upravene´ podobeˇ) dostal na vedoucı´ pozici jako prohlı´zˇecˇ pro „chytre´“ mobilnı´ telefony a PDA.

1.8.4 Ja´dro KHTML a WebKit

KHTML je renderovacı´ ja´dro, ktere´ je vyvı´jene´ v ra´mci projektu KDE, cozˇ je desktopove´

prostrˇedı´ pro operacˇnı´ syste´m Linux. Napsa´no je v jazyce C++. Uvolneˇno je pod licencı´

LGPL a v KDE se nacha´zı´ od verze 2.

Vyuzˇı´va´ jej webovy´ prohlı´zˇecˇ Konqueror, cozˇ je hlavnı´ prohlı´zˇecˇ pouzˇı´vany´ v deskto-pove´m prostrˇedı´ KDE a je na neˇm zalozˇen take´ prohlı´zˇecˇ Swift a RSS cˇtecˇka Akregator.

Na za´kladeˇ ja´dra KHTML bylo cˇa´stecˇneˇ vytvorˇeno spolecˇnostı´ Apple ja´dro WebKit, konkre´tneˇ renderovacı´ engine WebCore, a je pouzˇito pro webovy´ prohlı´zˇecˇ Safari urcˇeny´

prˇedevsˇı´m pro operacˇnı´ syste´my Mac OS X a Apple iPhone. Jako KHTML je napsa´n v jazyce C++ a pouzˇı´va´ licenci LGPL.

2 WYSIWYG XHTML editory 24

2 WYSIWYG XHTML editory

Mysˇlenka na vytvorˇenı´ WYSIWYG editoru, ktery´ by byl soucˇa´stı´ webovy´ch prohlı´zˇecˇu˚

nenı´ nova´. Ve skutecˇnosti byl WYSIWYG HTML editor soucˇa´stı´ jizˇ v prvnı´m internetove´m prohlı´zˇecˇi umozˇnˇujı´cı´m HTTP, ktery´ se jmenoval WorldWideWeb (pozdeˇji Nexus).

2.1 Soucˇasne´ open source editory

Dnesˇnı´ situace je o neˇco slozˇiteˇjsˇı´. Soucˇasne´ prohlı´zˇecˇe se staly postupem cˇasu mnohem rozsa´hlejsˇı´, slozˇiteˇjsˇı´ a pouzˇı´vaneˇjsˇı´. Z tohoto du˚vodu jsou i dnesˇnı´ na´roky na WYSIWYG editory veˇtsˇı´.

Za´kladnı´ podmı´nkou u nı´zˇe popsany´ch editoru˚ je GPL nebo LGPL licence, tedy aby WYSIWYG editor byl volneˇ sˇirˇitelny´ a libovolneˇ modifikovatelny´.

Vzhledem k existenci neˇkolika pouzˇı´vany´ch prohlı´zˇecˇu˚ je jednı´m z du˚lezˇity´ch faktoru˚, aby byl WYSIWYG editor kompatibilnı´ a choval se v kazˇde´m editoru stejneˇ. To je vzhledem k faktu, zˇe prohlı´zˇecˇe nejsou mezi sebou kompatibilnı´, na´rocˇny´ u´kol.

Pro webmastery a webove´ vy´voja´rˇe aplikacı´ je du˚lezˇite´, aby se ko´d aplikace dal snadno modifikovat dle jejich prˇa´nı´, vylepsˇovat o specificke´ za´lezˇitosti a v neposlednı´ rˇadeˇ byl snadno integrovatelny´.

Dnesˇnı´ open source JavaScriptove´ WYSIWYG editory jsou velmi oblı´bene´ dı´ky sve´

dobre´ funkcionaliteˇ a nulovy´m porˇizovacı´m na´kladu˚m. Ty nejlepsˇı´ projekty dosahujı´ kvalit komercˇnı´ch projektu˚ jako EditOnPro1.

2.1.1 TinyMCE

Jednı´m z nejpopula´rneˇjsˇı´ch a nejpropracovaneˇjsˇı´ch WYSIWYG XHTML editoru˚ psany´ch v JavaScriptu je produkt TinyMCE vyvı´jeny´ spolecˇnosti Moxiecode systems.

Vzhledem k licenci LGPL je tento opensource projekt mozˇno libovolneˇ pouzˇı´vat.

Modifikace jsou rˇesˇeny pomocı´ pluginu˚ a te´mat. K dispozici je i cˇesky´ prˇeklad.

Je mozˇne´ ho sta´hnout na stra´nka´ch http://tinymce.moxiecode.com/ v sekci download.

Integrace je velmi snadna´. Po stazˇenı´ souboru a rozbalenı´ na mı´sto, odkud bude aplikace vola´na stacˇı´ v cı´love´m dokumentu, kde ma´ by´t editor pouzˇit, vlozˇit externı´ Ja-vaScriptovy´ soubor s editorem a do hlavicˇky dokumentu vlozˇit inicializacˇnı´ ko´d, ve ktere´m

1zdroj: http://www.standards-schmandards.com/2007/WYSIWYG-editor-test-2/

Obra´zek 4: WYSIWYG editor TinyMCE

se provedou potrˇebna´ nastavenı´ editoru. Nastavenı´ inicializacˇnı´ cˇa´sti editoru jizˇ vsˇak tak snadne´ nenı´, a pokud je potrˇeba vyrˇesˇit neˇjake´ specificke´ nastavenı´, je trˇeba se sezna´mit s dokumentacı´ a spra´vneˇ vsˇe nakonfigurovat. Spolu s editorem se rozbalı´ i neˇkolik prˇı´kladu˚

pro snadneˇjsˇı´ pochopenı´ funkcˇnosti, a dobra´ podpora je take´ na domovsky´ch stra´nka´ch.

Spolecˇnost Moxiecode kromeˇ editoru nabı´zı´ i plugin pro pra´ci se soubory MCFile-Manager a plugin pro pra´ci s obra´zky MCImageMCFile-Manager. Tyto pluginy vsˇak jizˇ nejsou dostupne´ zdarma a je nutne´ za neˇ zaplatit.

Mezi prˇednosti TinyMCE patrˇı´ mozˇnost ulozˇenı´ vy´sledny´ch dokumentu˚ pomocı´ tech-nologie AJAX.

Nevy´hodou je prˇedevsˇı´m placeny´ souborovy´ a obra´zkovy´ manager. Editor je velmi robustnı´, rozsa´hly´ a vnitrˇneˇ komplikovany´ z du˚vodu uspokojenı´ uzˇivatelu˚ po co nejveˇtsˇı´m mnozˇstvı´ funkcı´ a mozˇnostı´, proto nenı´ vhodny´ pro me´neˇ na´rocˇne´ webove´ stra´nky nebo pro studium struktury, jak takovy´ editor funguje.

2.1.2 FCKeditor

Jednou z velky´ch konkurencı´ popula´rnı´ho TinyMCE je editoru FCKeditor, ktery´ byl podle pocˇı´tadla umı´steˇne´m na stra´nce sta´hnut vı´ce jak dva a pu˚l milionkra´t.

Tento editor nabı´zı´ rozsa´hlejsˇı´ rˇadu licencı´ a tak umozˇnˇuje vybrat si tu nejvhodneˇjsˇı´.

Editor je distribuova´n pod GPL, LGPL a MPL open source licencemi a navı´c pod komercˇnı´

licencı´ Closed Distribution License, ktera´ je urcˇena pro spolecˇnosti a produkty, ktery´m

2 WYSIWYG XHTML editory 26

Obra´zek 5: WYSIWYG editor FCKeditor nevyhovujı´ open source licence. Tato komercˇnı´ licence je zpoplatneˇna.

Je mozˇne´ ho sta´hnout na stra´nka´ch http://www.fckeditor.net/ v sekci download.

Integrace editoru do webovy´ch stra´nek je o neˇco obtı´zˇneˇjsˇı´, nezˇ u editoru TinyMCE, cozˇ mu˚zˇe mı´t souvislost s mozˇnostı´ placene´ podpory. Po stazˇenı´ a rozbalenı´ souboru jsou v adresa´rˇi slozˇky editor a samples s neˇkolika soubory. Pomocı´ prˇı´kladu˚ vsˇak lze snadno odvodit, jak dany´ editor zakomponovat do stra´nek.

Na rozdı´l od TinyMCE ma´ FCKeditor pouze souborovy´ manager, proto mnoho webo-vy´ch vy´voja´rˇu˚, kterˇı´ potrˇebujı´ do sve´ho redakcˇnı´ho syste´mu komplexneˇjsˇı´ rˇesˇenı´, zu˚sta´vajı´

u TinyMCE i prˇes me´neˇ vy´hodne´ licencˇnı´ podmı´nky a zpoplatneˇne´ pluginy.

Mezi prˇednosti tohoto editoru patrˇı´ automaticka´ detekce jazyka, nemusı´ se tedy spe-cia´lneˇ stahovat a nastavovat jazykova´ mutace.

Specialitou je rˇesˇenı´ nekompatibility prohlı´zˇecˇu˚ Internet Explorer a Firefox. FCKeditor ma´ pro kazˇdy´ prohlı´zˇecˇ zvla´sˇtnı´ ja´dro.

2.1.3 widgEditor

Mezi robustnı´mi WYSIWYG editory se skry´va´ nena´padny´, ale oblı´beny´ editor widg-Editor, ktery´ mnohe´ zaujal svou jednoduchostı´, rychlostı´ a na rozdı´l od TinyMCE nebo FCKeditoru svou datoveˇ mnohem mensˇı´ velikostı´.

Autor uvolnil editor pod licencı´ GPL a da´le jej prˇestal vyvı´jet. Dı´ky licenci a prˇehled-nosti ko´du si jej oblı´bilo mnoho webmasteru˚ a vy´voja´rˇu˚. Stoupajı´cı´ obliba widgEditoru donutila autora po trˇech letech k vyda´nı´ nove´ verze s opravami chyb, ktere´ se v pru˚beˇhu cˇasu objevili. Byl take´ prˇislı´ben vy´voj nove´ verze editoru.

Za´kladnı´ vlastnosti editoru jsou oproti vy´sˇe zmı´neˇny´m editoru˚m strohe´. Editor umı´

pouzˇı´vat tucˇny´ text, kurzı´vu, vkla´dat odkazy, obra´zky, seznamy, odstavce, nadpisy a

Obra´zek 6: WYSIWYG editor widgEditor

zobrazit zdrojovy´ ko´d, cozˇ vsˇak mnoha lidem vyhovuje a dı´ky jednoduchosti a prˇehlednosti je mozˇne´ editor vcelku snadno modifikovat.

Je ho mozˇne´ sta´hnout na adrese http://themaninblue.com/experiment/widgEditor/.

Implementace do webovy´ch stra´nek je velmi jednoducha´. Po stazˇenı´ a rozbalenı´ boru stacˇı´ v cı´love´m webove´m dokumentu do hlavicˇky vlozˇit externı´ JavaScriptovy´ sou-bor s editorem a na´sledneˇ budou vsˇechna textova´ pole <textarea> nahrazena WYSIWYG editorem. To sice vzˇdy nemusı´ vyhovovat, ale na druhou stranu nenı´ potrˇeba zˇa´dna´ dalsˇı´

nastavenı´.

Dı´ky svojı´ prˇehlednosti a dobrˇe cˇitelne´mu zdrojove´mu ko´du je tento editor vhodny´

ke studijnı´m u´cˇelu˚m.

2.1.4 Bronziho editor

Poslednı´ editor, o ktere´m bych se ra´d zmı´nil, je Bronziho editor, ktery´ je jeden z velmi nadeˇjny´ch a jeden z prvnı´ch cˇesky´ch projektu˚ zameˇrˇeny´ch na vytva´rˇenı´ validnı´ho HTML a XHTML obsahu pro webove´ stra´nky pomocı´ JavaScriptove´ho WYSIWYG editoru.

Za´meˇrem autora je svobodne´ sˇı´rˇenı´ a modifikace aplikace podle potrˇeb uzˇivatele a proto je program uvolneˇn pod licencı´ GPL a LGPL.

Je mozˇne´ ho sta´hnout na stra´nka´ch http://www.bronzi.cz/ spolu s dalsˇı´mi projekty.

Podle autorova na´zoru se veˇtsˇina online WYSIWYG editoru˚ pouzˇı´vajı´cı´ch v redakcˇ-nı´ch syste´mech snazˇı´ o implementaci mnoha funkcı´, ktere´ vsˇak nemajı´ velkou vyuzˇitelnost.

Proto se snazˇı´ vyhnout situaci, kdy tvu˚rci webovy´ch stra´nek pracneˇ omezujı´ funkce edi-toru za u´cˇelem zabra´neˇnı´ znehodnocenı´ designu stra´nek nezkusˇeny´mi uzˇivateli, kterˇı´ by

2 WYSIWYG XHTML editory 28

Obra´zek 7: WYSIWYG editor Bronzi

Obra´zek 8: Vzhled Microsoft Word 2007 se pokousˇeli vylepsˇit svu˚j prˇı´speˇvek ru˚zny´mi nevhodny´mi vylepsˇenı´mi.

Aktivace editoru je velice snadna´ a dobrˇe vysveˇtlena´ a zna´zorneˇna´ na webovy´ch stra´n-ka´ch autora. Pro stazˇenı´ a rozbalenı´ stacˇı´ do dokumentu, kde se ma´ nacha´zet editor vlozˇit odkaz na externı´ soubor se samotny´m skriptem, na´sledneˇ vlozˇit jednoduchou konfiguraci a nakonec nastavit elementu <textarea>, ktery´ ma´ by´t prˇekonvertova´n na WYSIWYG editor, identifika´tor „textarea“.

Graficke´ rozhranı´ bylo znatelneˇ inspirova´no nejnoveˇjsˇı´mi verzemi aplikace Microsoft Word1a proto bude pro mnoho uzˇivatelu˚ velky´m prˇı´nosem jeho velmi lı´bivy´ a poveˇdomy´

vzhled.

Autor da´le take´ pracuje na vlastnı´m souborove´m a obra´zkove´m manazˇeru.

1Obra´zek cˇ. 8, zdroj: http://myego.cz/item/microsoft-office-2007-o-deset-let-pred-konkurenci

Related documents