Какие плюсы и минусы при написании одного большого класса в CSS

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

Ответ

Плюсы:

  • Простота управления: один класс легче поддерживать и изменять
  • Меньше вероятность конфликтов стилей
  • Уменьшает размер CSS-файла за счет отсутствия дублирования

Минусы:

  • Потеря гибкости: сложно переиспользовать отдельные стили
  • Большой класс сложнее читать и поддерживать
  • Риск создания "божественного объекта" с избыточной ответственностью

Пример:

/* Плохо - монолитный класс */
.product-card {
  width: 300px;
  padding: 20px;
  border: 1px solid #ddd;
  border-radius: 8px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  background: white;
  margin: 10px;
}

/* Лучше - разделение на компоненты */
.card { /* базовые стили */ }
.card--product { /* модификатор */ }

Оптимально использовать комбинацию БЭМ или CSS-модулей для баланса между переиспользованием и читаемостью.