#яндекс #бэм
Закрыт. Этот вопрос не по теме. Ответы на него в данный момент не принимаются. Хотите улучшить этот вопрос? Update the question so it's on-topic for Stack Overflow на русском. Закрыт 4 года назад. Добрый день! Стоит ли использовать БЭМ (Блок Элемент Модификатор (Яндекс)) и, что означает независимый блок в контексте БЭМ?
Ответы
Ответ 1
БЭМ, это соглашение о наименованиях. Не MVC, и не исключает совместное использование с каким-нибудь MVC. БЭМ помогает решить ряд определенных проблем: Исключить зависимые имена классов. При разработке долгоиграющих проектов или при большой команде это приводит к разъезжающимся страницам Существенно уменьшить усилия на изучение проекта для нового разработчика. Все части вёрстки разложены по файлам и папкам с интуитивно понятными именами Избавиться от копипаста в рамках страницы/сайта/портала. Блок это готовая часть вёрстки, его можно и нужно повторно использовать. Элементы и модификаторы позволяют точечно вносить изменения для каждого случая использования этого блока, избегая взаимное влияние использования модифицированных блоков на одной странице Избавиться от копипаста, если необходимо внести изменение в определенный компонент вёрстки. Не нужно делать правки в 100500 местах, правки вносятся в одном месте Ценой этого является высокий порог входа к использованию БЭМ. Это принять БЭМ в сердце, разобраться с инструментами сборки, применимыми к вашему случаю, донести БЭМ до окружающих коллег. Стоит ли заплатить эту цену, решать вам. Про АНБ в контексте БЭМ хорошо сказано здесь https://ru.bem.info/forum/issues/-46/ По сути это два правила: Всем элементам внутри блока надо задать классы, т.е. не опираться в CSS на имена элементов Все классы, на которые накладываются стили этого блока, должны быть уникальными, например, начинаться с имени класса корневого элементаОтвет 2
Я бы очень рекомендовал БЭМ как методологию, не обязательно использовать все инструменты БЭМ как подход к разработке. Для примера: на проектах, где использовали БЭМ в коде чистота и порядок, блоки независимы, гибки (имхо модификаторы - это прекрасно) и что самое важное - они остаются блоками во всех смыслах))
Комментариев нет:
Отправить комментарий