Столкнулся с такой вещью, что документации много, но подача её очень разрознена... Это очень путает и отталкивает. Сделал небольшой план/эскиз того, что хотелось бы видеть будучи новичком. Сделал правда на коленке, не все моменты продуманы. Основная идея - никакого погружения, до момента осознания! Всё должно быть по минимуму и поэтапно. Обновления плана буду скидывать сюда.
А сейчас эту версию назовём 0.1
БЭМ
Этап 0. Методология
- История, основная идея
Этап 1. Заготовка
- Установка nodejs
- Установка project-stub
Этап 2. Создание простого проекта
- Описание bemjson и зачем он нужен
- Коротко о bemhtml, bh (Что назначение одно и тоже, но подходы разные)
- Вёрстка простой страницы (просто вёрстка, без логики!)
Этап 3. Добавление логики (i-bem)
- Коротко об i-bem
- Декларации блоков
- Связи между блоками
Этап 4. Пора в продакшен
- Создание статистической версии
- Использование на back-end'е
- nodejs
- php
- ruby
- и т.д.
Этап 5. Внесение изменений в готовый проект
- Что нужно, для того, чтобы сделать правки в продакшене
Головокружительное погружение в БЭМ
- миксы
- библиотеки
- уровни переопределения
- технологии
- борщик
- ну в общем вся документация по-полочкам
@belozyorcev Спасибо!
// cc @innabelaya @vithar
Это выглядит как костяк для «Сделай сам!» сайта или приложения.
Было бы круто использовать для совершенствования https://github.com/bem/do-it-yourself-workshop или для создания bemlearning.com (аналога http://rubylearning.com).
@zxqfox. Не совсем понимаю подтекст )
Это порицание или одобрение?
В догонку: Приятно сделано обучение у MeteorJS https://www.meteor.com/install
П.Н. А вообще с выходом bem-core@v3 - БЭМ будет намного проще и симпатичней :) А из этого много чего исходит.
В v3 API реализовано так, как я хотел его видеть (в частности установка модификторов на элементы и не только это)
@belozyorcev Это то, как бы я хотел, чтобы твоя идея развивалась ;-) Про v3 — согласен полностью.
А мне непонятно что такое БЭМ-стек. Это все технологии, которые написаны в Яндексе про БЭМ и для БЭМ?
Может есть какое-то определение или минимальный набор технологий? Что считается БЭМ-стеком, почему часто употребляется полный БЭМ-стек. Неполный это что, только методология?
Проблема документации, мне кажется в том что в ней мало конкретики. Описано несколько способов достижения результата, но не ясно какой из них правильный. Новичку без опыта трудно сразу понять, какой именно способ подходит для него.
@sefus Под полным стеком БЭМ-технологий мы обычно подразумеваем динамический «двухпроходный» проект на сервере, когда из сырых данных формируется BEMJSON (например, с помощью BEMTREE), а из BEMJSON — HTML (с помощью BEHTML или BH) и i-bem.js на клиенте.
@belozyorcev предлагаю следующие правки:
Этап 2. Создание простого проекта
@Guria да :) Ты прав по 4-му пункту. Это действительно полезный момент для понимания пользы БЭМа. Соберётся ещё немного правок и дополнений - скину новую версию плана