<b>Spatie-пакеты: как не превратить проект в зоопарк из «удобных» зависимостей</b>
Пакеты Spatie любят за то, что они закрывают рутинную PHP-работу без лишней магии: media, permissions, backups, activity log, data transfer objects. Но в живом проекте проблема не в установке, а в дисциплине интеграции.
— Сначала проверяй границы пакета: что он делает сам, а что оставляет тебе. Если пакет тянет за собой слишком много инфраструктуры, его цена выше удобства.
— Смотри на контракт: есть ли у него явные модели, сервисы, конфиг и точки расширения. Чем понятнее API, тем меньше сюрпризов в поддержке.
— Не смешивай доменную логику с пакетной. Пакет хранит механизм, а правила бизнеса должны жить в своём слое.
— Проверь, как пакет ведёт себя в тестах, очередях, кэше и CLI. Именно там всплывает большинство «вроде работает».
Ещё одна типичная ошибка — ставить пакет ради одной мелкой функции и потом тащить его конфиги, миграции и события через весь код. Если зависимость не экономит время на дистанции, она начинает съедать его уже через месяц.
Хорошая практика простая: брать Spatie как готовый строительный блок, но оборачивать его в свой сервисный слой. Тогда пакет можно заменить без переписывания половины приложения.
Laravel & PHP Deep — фреймворки и пакеты
@laravel_php_deep
<b>Spatie-пакеты: как не превратить проект в зоопарк из «удобных» зависимостей</b>
Этот пост опубликован в Telegram-канале Laravel & PHP Deep — фреймворки и пакеты. Подписаться можно по ссылке: @laravel_php_deep.