Event.Behavior
Prezentace Metaprogramming with JS
Adama McCrea (informace i na Dev::info
) inspirovala Ryana Johnsona
k vytvoření DSL
(Domain-Specific Language) s názvem Event.Behavior
. Event.Behavior umožňuje psát metody obsluhy událostí v JavaScriptu způsobem, který se blíží přirozené řeči.
Ukázka:
with (Event.Behavior) {
show('postal_code_field').when('country_select').is('United States').or('Canada');
set_style(styles).on(paragraphs).when(selects).change();
add_class_name('black').to('paragraph').when('color_select').is('black');
}
Event.Behavior pracuje se základní sadou slov, jako jsou slovesa (ukaž, skryj, odstraň, přidej_styl, nahraď), události (změněno, kliknuto, ...), spojky (a, nebo) nebo podmínky (je, není, obsahuje). V doslovném překladu tedy výše popsaný kód vypadá takto:
with (Event.Behavior) {
ukaž('postal_code_field').když('country_select').je('United States').nebo('Canada');
nastav_styl(styles).na(paragraphs).když(selects).se_změní();
přidej_třídu_jménem('black').k('paragraph').když('color_select').je('black');
}
Event.Behavior umožňuje přidávání dalších sloves či událostí, lze jej tedy přizpůsobit na míru vaší aplikaci.
Přiznám se, že mě možnost zapisovat obsluhu událostí téměř-přirozeným jazykem zaujala. Dnes je to možná kuriozita, za pár měsíců - kdo ví? Třeba se dočkáme stránek, které budou odesílat formuláře pomocí odešli(‘formular’).když(‘odeslat’).je_stisknuto(); - a nebude nám to připadat nijak divné.
Další popis a odkaz pro stažení naleznete na stránce Event.Behavior 
- Chcete-li přidat komentář, přihlašte se nebo se zaregistrujte.
