Joseph Smarr z Plaxo (jeden z rychle se rozvíjejících sociálních serverů) měl přednášku na téma High-Performance JavaScript: Why Everything You've Been Taught is Wrong.
Je vždy zajímavé poslechnout si téma zpracované od někoho, kdo mu právě věnoval několik měsíců. Pro ukázku vybírám pár zajímavých bodů z přednášky. Některé jsou pro mne překvapující, ale předpokládám, že Joseph po té rychlostní optimalizaci celého Plaxa ví, co tvrdí:
Pokud vás téma zajímá, projděte si slidy z přednášky, vážnější zájemci mohou zhlédnout video (v první třetině se Joseph soustředí na představení webu Plaxo, tu můžete přeskočit, rychlostní optimalizace přijde na řadu hned po té).
(via mykzilla)
Ten onmousedown místo onclick, to bude nějaká opičárna, ne? Není těch sto milisekund jen doba, než uživatel pustí tlačítko myši? Mně osobně navíc přijde maličko divný, když něco funguje už na mousedown, jsem ze všech UI zvyklý na onclick. [P.S. Zhlédnout film/video, shlédnout na někoho ze třetího patra.]
[1] Myslím, že se jedná o psychologický trik a nikoliv výkonnostní, zej. když o pár slidů dál je "Cheat when you can". Ale v případě, že tu je tah na "nejrychlejší aplikaci" (a Joseph ho evidentně má), tak to může hrát ve spojení s dalšími triky roli. Při používání Plaxa jsem si neobvyklého chování nevšiml. Aplikace je rychlejší a v tom je ten trik.
[4] Samozřejmě, stejně tak zkušený programátor stačí na udělání webu v čistém Ruby (PHP, Python - doplňte dle osobních preferencí), ale pokud s tím nechce trávit moc času, tak sáhne po nějakém frameworku. Módní trend možná, to ale nic nemění na tom, že díky nim se může do zajímavějších věcí pustit i člověk, který nemá čas/peníze/zkušenosti.
Spravne, je treba rozlisovat mezi snadnosti vyvoje, kdy se pouzije uz hotrovy, obecny, ale neoptimalni framework, nebo se udela jen to, co je opravdu potreba. Rozdil ve velikosti (a obcas i vykonu) muze byt az o rad - pamatuju, jak jsem jednu silenou Javascriptovou knihovnu zahodil, protoze byla schopna zrat nekolik sekund 100% vykonu i na dvogigahercovych strojich (je pravda, ze vykresloval sakra velkou tabulku). Moje verze to same stihla za polovinu doby, desetine velikosti kodu a vetsinou s mnohem nizsi zatezi (uzkym hrdlem bylo spis posilani XHTTPRequest dotazu serveru a cekani na zpetnou odezvu, protoze IE nezvlada prilis velka POST data najednou). Zakaznik byl nadsen, jeniom se mu nelibilo, ze uz se mu tabulka nevykresluje v prohlizeci "nazivo" :-)
[9] Říkám tomu spíš čirý pragmatismus - použití knihoven mi přináší hmatatelný výsledek, ne dobrý pocit, že jsem IN.
Bohužel všichni teď chtějí weby nejlépe zadarmo a včera bylo pozdě. Neznám moc lidí, kteří by dokázali s čistým JavaScriptem například to samé co Prototype + script.aculo.us nebo jQuery + Interface. Tedy přesněji řečeno neznám žádné, což neznamená, že neexistují, ale představovali by určitě významnou část v rozpočtu projektu. Možná jsem to měl upřesnit a zaměnit "běžný vývoj" za "vývoj malých projektů", jak jsem to myslel.
Jinak já jsem si všiml, že se tu nikdo nepře o jejich užitečnosti ;-) Jenom jsem zašel dál a tvrdím, že je dost situací, kdy nepoužití podobných knihoven je nerozum - buď tím okrádám sebe o čas, zákazníka o peníze nebo nejčastěji obojí.
Knihovny jako jQuery hlavně ukazují rozdíl mezí tím, vyvojáři skutečně chtějí, a co jim nabízí uměle vytvořené API např. DOM API. Bylo by fajn, kdyby v duchu projektu HTML5 vzniklo i DOM5, které by implementovalo funkcionalitou podobnou JavaScriptovým frameworkům přímo do prohlížečů.
Martin Hassman ex-biochemik, umělecký programátor a publicista. Spoluzakladatel CZilly, zakladatel Zdrojáku, správce HTML5.cz, organizátor hackathonů, čekovacích muzejních nocí aj. akcí.
Přečteno 24 772×
Přečteno 24 320×
Přečteno 20 947×
Přečteno 20 016×
Přečteno 19 921×