2013-03-27 5 views
0

파일 시스템의 별도 디렉토리에 각각 여러 개의 SMS 공급자가 있습니다. 각 제공자 디렉토리 내의 메인 클래스는 파일 시스템의 다른 곳과 제공자 디렉토리 외부에있는 추상 클래스 ProviderAbstract.php를 확장합니다.리팩토링 및 종속성 문제

각 공급자를 별도의 작성자 패키지로 만들어 개별적으로 개발, 테스트 및 배포 할 수 있습니다. 문제는 각 공급자가 확장하는 ProviderAbstract 클래스입니다.이 상황에서 가장 좋은 접근 방법은 무엇입니까? 각 제공자 패키지 안에있는 클래스의 사본을 가지고하는 것은 해결책이 아니다 ..이는 경우

답변

0

내가 모르는 어떤 의존성이 유형을 해결하는 가장 좋은 방법입니다 .. 사전에

감사합니다 올바른 길. 예를 들어 로그가있는 경우 Monolog 또는 Swiftmailer는 모두 하나의 작곡가 패키지 안에 "Providers"를 가지고 있습니다. 그들은 다른 것을 보지 않고 하나의 Provider를 개발하고 테스트하고 나중에 전체 패키지를 배포 할 수 있습니다. 콤포넌트 패키지를 작게 구성하기로 결정하면 많은 오버 헤드가 발생할 것입니다.

그러나 계속 진행하려면 추상 클래스를 자신의 작성자 패키지로 추출하고 다른 모든 패키지에는 종속성이 있어야합니다. 이것은 PSR3 로거 인터페이스가 사용되는 방법입니다.