Какие знаешь методологии разработки, кроме BEM

«Какие знаешь методологии разработки, кроме BEM» — вопрос из категории CSS, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

  • SMACSS (Scalable and Modular Architecture for CSS) — разделяет стили на категории: базовые, модули, состояния, темы и layout. Упрощает поддержку больших проектов.

  • OOCSS (Object-Oriented CSS) — разделение структуры и оформления. Пример:

    .button { padding: 10px; } /* структура */  
    .button-primary { background: blue; } /* оформление */
  • Atomic CSS — стили как атомарные классы (например, mb-10 для margin-bottom: 10px). Подходит для утилитарных фреймворков (Tailwind).

  • ITCSS — иерархическая организация стилей (от общих к частным), часто используется с препроцессорами.

  • CSS-in-JS (Styled Components, Emotion) — стили в JavaScript, изоляция и динамика.

Выбор зависит от масштаба проекта и предпочтений команды. BEM популярен, но не единственный вариант.