“И создал Бог сущность, и не дал ей родителей, но вложил в неё зависимости через конструктор.” — Книга DI 1:1
📜 Священные догматы
1. Нет ничего выше Инъекции
Всё приходит через __construct(), ибо только так можно осознанно управлять зависимостями. Наследование — путь к порче, трейды — путь к неведению. Истинный путь — передать нужное, а не встроить ненужное.
2. “Да не будет у тебя другого родителя, кроме Object”
Ибо множественное наследование порождает чудовищ, а трейды — химеры. Только через композицию возможна истинная декомпозиция духа.
3. Контракты — наше писание
Интерфейсы — это Завет. Кто нарушит контракт, тот отвергнет полиморфизм и будет изгнан в NullPointerException.
⸻
📖 Избранные главы Священного PSR’алма • PSR-1: “Вначале было соглашение…” • PSR-2: “…и формат был с отступом в 4 пробела…” • PSR-4: “…и шёл код по автозагрузке, и не было хаоса…”
⸻
🧙 Пророки Композитаризма • Святой Роберт Мартин (да пребудет с ним чистота SOLID) • Апостол Кент Бек, принесший нам TDD • Пастырь Symfony, проводник DI-контейнера
⸻
🙏 Обряды • Крещение через рефакторинг — ты удаляешь родителя, заменяя его внедрением интерфейса. • Исповедь в Code Review — если случайно использовал use Trait, признай это. Тебе дадут епитимью: 5 сервисов и один фасад. • Святое Причастие — разделение на малые классы.
⸻
❌ Заповеди Анти-Композитария
“И сказал Архитектор-Монолит: наследуйся и размножайся” — но это был ложный Бог!
• Не возжелай абстрактного базового класса ближнего твоего • Не внедряй BaseController как основного спасителя • Не используй трейды, даже если тебе очень-очень надо.
⸻
🤖 Символ Веры
“Верую в Единого Сервиса, Создателя логики и API. И в Композицию Его Святую, Рожденную, но не Наследованную, Из Interface и через Dependency Injection, Принявшую страдания от Legacy, Воскресшую в рефакторинге, И вновь придёт с версией 2.0, Чтобы судить монолит и слить его в микросервисы.”