2013-03-27 4 views
0

У меня есть несколько провайдеров SMS, каждый из которых находится в отдельном каталоге файловой системы. Основной класс внутри каждого каталога поставщика расширяет абстрактный класс ProviderAbstract.php, который находится в другом месте в файловой системе и за пределами каталогов провайдера.Проблема рефакторинга и зависимостей

Я хочу сделать каждый провайдер отдельным пакетом композитора, чтобы он мог быть разработан, протестирован и развернут независимо. Проблема заключается в классе ProviderAbstract, который распространяется каждым провайдером ... Каков наилучший подход в этой ситуации? имея копию класса внутри каждого пакета поставщика не является решением .. что это лучший подход к разрешению такого рода зависимости ..

Заранее спасибо

ответ

0

Я не знаю, если это Правильный способ. Если у вас есть журнал, например. Монолог или Swiftmailer, у всех их есть «Провайдеры» внутри их одного композиционного пакета. Они могут разрабатывать одного Провайдера, не глядя на других, затем тестировать их и развертывать весь пакет. Если вы решите поместить компоненты настолько маленькими в собственные пакеты композиторов, вы получите много накладных расходов.

Однако, если вы хотите продолжить, вы можете извлечь абстрактный класс в собственный пакет композитора и иметь все остальные пакеты в качестве зависимости. Таким образом используется интерфейс регистратора PSR3.

Смежные вопросы