Jak moc zasahují javascriptové frameworky do globálního jmenného prostoru?
Nálepky:
Tuto otázku si položil Mats Bryntse a pokusil se na ni najít odpověď. Pro porovnání vytvořil jednoduchý nástroj, který počet globálních identifikátorů u každého frameworku změří. Jak? Načte jej do iframe a spočítá, kolik globálních identifikátorů přibylo. Nejlépe je na tom framework YUI, který používá jen jeden ( YAHOO
), framework jQuery používá dva ( $
a jQuery
), Dojo jich používá 5, Prototype 25 a MooTools dokonce 149. Zajímavostí je i skript měřící návštěvnost pro Google Analytics, který ke své celkem jednoduché funkčnosti používá 76 globálních identifikátorů.
Nejedná se o statistiku jedinou. Matsův nástroj spočítá i počet identifikátorů, které daný framework vloží do runtime objektů JavaScriptu (např. rozšíření řetězců o další metody). Ale to už je úplně jiná, byť také zajímavá, statistika (najdete ji v témže nástroji ve sloupci „Augmented“).
Dobre ze som presiel z MooTols na jQuery. Robim sice weby sam od nuly, takze mam nad JS na stranke kontrolu, ale raz sa mozno objavi pracicka na existujucom projekte.
Jsme opět v době optimalizováno pro MSIE 4.0 a vyšší?
Tak tady to bylo asi šetření času autora. Ale jinak ano, taková doba se snadno může vrátit, ale rozhodně by to nenastalo najednou, ale trvalo řadu let, protože dnes je ekosystém prohlížečů poměrně dobře rozložený. Optimalizace pro IE se dělaly v době, kdy IE mělo přes 90 % a pro výrobce měly tenkrát smysl (byť jsem za to nebyl rád, protože jsem patřil do těch „šizených“ 10 %).
Asi by se slušelo dodat, že těch 76 identifikátorů má starý kód Google Analytics, který byl už před více než rokem nahrazen novým kódem, který alokuje pouze 1 identifikátor.