«Полный стек технологий БЭМ»

HTML Academy, 2016 Санкт-Петербург

Полный стек
БЭМ

Сcылки

Не только CSS

БЭМ (Блок-Элемент-Модификатор) — методология web-разработки,
а также набор:

  • интерфейсных библиотек
  • фреймворков
  • и вспомогательных инструментов.


ru.wikipedia.org/wiki/БЭМ

Методология!

Библиотеки!

Инструменты!

А если без маркетинга?

Начнем с HTML

PSD
=>
HTML + CSS

current footer

barbershop.psd

current footer
current footer
assembler
large-matrix-blu-ray7

HTML – это Ассемблер

BEM
engineering-blueprint.medium

engineering

БЭМ-проектирование

Методология!

Блок

__элемент

_модификатор

current footer
current footer
current footer
current footer

Методология!

current footer

Начнем с бекенда

frontend-vs-backend
JSON
product.example.json

Двухпроходная шаблонизация

Сергей Бережной: "Экзотическая шаблонизация, или как писать HTML для блоков"

slideshare/riga-apr-berezhnoibemhtml

Если кратко?

DATA
=>
BEMJSON
=>
HTML

DATA + BEMTREE =>
BEMJSON

Сергей Максимов: BEMTREE — генерируй дерево

events.yandex.ru/lib/talks/1354/

slideshare/bemtree

Если кратко?

BEMTREE

А у нас?

current footer
current footer
product.example.json
product.bemtree

Что получили?

product.example.json

JSON превращается...

current footer

JSON превращается в BEMSON

product.example.bemjson.js

Знаем, что показать

Но как показать, пока не знаем

BEMHTML

current footer

image

current footer
bem-components/image.bemhtml

HTML?

assembler
product__image.example.html
current footer
assembler

Уфф!

А теперь

Client

frontend-vs-backend
frontend-vs-backend

jQuery

current footer
current footer

jQuery button

jQuery

i-bem.js

i-bem.js

i-bem.js: блок

product.js

Сергей Бережной: "Клиентский JavaScript в БЭМ-терминах: от блока до библиотеки"

slideshare/riga-apr-berezhnoiibemjs

А дальше?

github.com/
bem-under-sailsjs

А что под капотом?

Библиотеки БЭМ

Ядро: bem-core

bem-core

компоненты:
bem-components

bem-components

Библиотека bem-components

Ангелина Сидорцова

youtube

open source

scrum board

scrum board

Документация

Сообщество ru.bem.info

Примеры проектов

project-stub

index.bemjson

index.bemjson.js
project-stub_index-bemjson

Вопросы?

alexbaumgertner

BEM

Реклама!

Ищем наставников в Академию

tutors

tutors

Бонус!

localhost/products

Спасибо!

Fork me on Github