Сергей Бережной — bem-core

Preview:

DESCRIPTION

Недавно мы выделили из библиотеки bem-bl минимальное ядро для разработки сервисов, без каких-либо конкретных визуальных блоков. В докладе мы поговорим об этом ядре: что вошло в его состав, что изменилось и что появилось нового.

Citation preview

bem-core

Сергей БережнойBEMup в рамках YaC 2013, Москва

bem-bl

bem-bl

блоки-хелперы

визуальные блоки

4

bem-core

bem-core

Уровни переопределения

bem-core: Уровни переопределения

common.blocks — предназначен для любых устройств и браузеров

desktop.blocks — следует использовать для всех десктопных браузеров

touch.blocks — реализует некоторую специфику для тач-платформ

7

bem-core

Блоки

bem-core: Блоки

i-bem — базовый блок с хелперами для JS и HTML

9

bem-core: Блоки

ecma — некоторые ES5-полифилы

strings — хелперы для JS-строк

objects — хелперы для JS-объектов

functions — хелперы для JS-функций

events — JS-события

10

bem-core: Блоки

inherit — ООП-хелперы

11

bem-core: Блоки

jquery — jQuery

12

bem-core: Блоки

tick — глобальный таймер

idle — IDLE-событие

next-tick — полифил для nextTick/setTimeout(0, ...)

13

bem-core: Блоки

identify — идентификация JS-объектов

clearfix — CSS-трюк clearfix

querystring — работа со строкой запроса

loader — загрузчик для JS-файлов

cookie — хелперы для работы с браузерными куками

vow — реализация Promises/A+

14

bem-core: Блоки

dom — хелперы для работы с DOM

pointer-events — кроссплатформенные события указателя

ua — определение возможностей браузера

page — скелет для html/head/body

15

bem-core

Изменения

bem-core: Изменения

Переход на модульную систему github.com/ymaps/modules

17

bem-core: Изменения

Из i-bem, i-bem__dom убраны все deprecated-методы

i-bem больше не зависит от jQuery(i-bem__dom продолжает зависеть от jQuery)

18

bem-core: Изменения

BEMHTML-шаблоны можно писать с использованием JS-синтаксиса

bemtree (на базе bem-xjst): для описания процесса динамического построения БЭМ-дерева

19

bem-core: Изменения

vanilla.js: JS-реализация модулей, не зависящая от конкретного JS-движка

browser.js и node.js: JS-реализация блоков в соответствующих движках

20

bem-core: Изменения

Система модульного тестирования и примеров для блоков в библиотеке

21

bem-core: Изменения

i-bem и BEMHTML: простые модификаторы (модификаторы без значений)

22

bem-core: Изменения

Все блоки-модули избавились от префиксов

23

bem-core: Изменения

Все блоки-модули, кроме i-bem, избавились от префиксов

24

bem-core: Изменения

github.com/bem/bem-core/blob/v1/CHANGELOG.md

25

bem-core

Контрибьют

bem-core: Контрибьют

Рабочая рабочая копия

Правила для заведения задач, веток и пулл-реквестов

Тесты и примеры

27

bem-core

Версионирование

bem-core: Версионирование

x.y.Z — совместимые изменения

x.Y.z — не совместимые изменения

X.y.z — совсем не совместимые изменения

29

bem-core

Планы

bem-core: Планы

31

32

veged@yandex-team.ru

@vegedveged

Сергей БережнойРуководитель отделаразработки поисковых интерфейсов

3422

!"#$%&' (# )*%+#*%,

Recommended