Tailwind CSS4: Почему утилитарные стили лучше масштабируются

Многие разработчики не любят видеть утилитарные классы в HTML. Это выглядит неопрятно. Это напоминает старые инлайновые стили, которых вы научились избегать. Может показаться, что мы движемся назад.

Но традиционный CSS создает другую проблему.

Представьте себе таблицу стилей на 5 000 строк. Разработчик А написал класс два года назад. Разработчик Б хочет изменить одну маленькую деталь. Разработчик Б боится трогать оригинальный класс, так как не знает, не затронет ли это какую-нибудь скрытую страницу. Поэтому вместо этого он создает новый класс.

Это приводит к двум основным проблемам:

Tailwind CSS меняет этот подход. Он использует утилитарные классы, такие как bg-mint-500 или p-4. Этот метод дает два главных преимущества:

  1. Меньший размер бандла Вы повторно используете одни и те же классы во всем приложении. Ваш CSS-файл не растет линейно вместе с проектом. Будь у вас десять страниц или десять тысяч, ваш CSS остается компактным.

  2. Безопасный рефакторинг Все стили элемента находятся внутри этого компонента. Если вы удаляете компонент, стили удаляются вместе с ним. Вы не сломаете боковую панель на другой странице по ошибке.

Вы можете спросить о читаемости.

В современной веб-разработке вы используете такие компоненты, как React или Vue. Вы не смотрите на неопрятный HTML весь день. Вы стилизуете компонент один раз, а затем используете чистый тег вроде <Card /> в основной разметке.

Все «грязные» детали остаются внутри файла компонента. Ваша основная архитектура остается чистой и предсказуемой.

Мы променяли красивую разметку на удобство поддержки. Мы миримся с неопрятным кодом во время разработки, чтобы обеспечить стабильную работу системы в продакшене.

Как вы управляете своим CSS? Вам нравятся утилитарные классы?

Источник: https://dev.to/cathylai/tailwind-css4-why-those-inline-styles-are-actually-more-scalable-a-senior-css-developers-guide-hdj