Oop 重构和依赖性问题

Oop 重构和依赖性问题,oop,refactoring,packaging,composer-php,decoupling,Oop,Refactoring,Packaging,Composer Php,Decoupling,我有很多SMS提供商,每个都在文件系统中的一个单独目录中。每个提供程序目录中的主类扩展了抽象类ProviderAbstract.php,该类位于文件系统中的其他位置和提供程序目录之外 我想让每个提供者都成为一个单独的composer包,这样就可以独立地开发、测试和部署它。问题是每个提供程序扩展的ProviderAbstract类。。。在这种情况下,最好的方法是什么?在每个提供程序包中都有一个类的副本不是解决方案。。解决这种依赖关系的最佳方法是什么 提前谢谢我不知道这是不是正确的方法。如果您在Mo

我有很多SMS提供商,每个都在文件系统中的一个单独目录中。每个提供程序目录中的主类扩展了抽象类ProviderAbstract.php,该类位于文件系统中的其他位置和提供程序目录之外

我想让每个提供者都成为一个单独的composer包,这样就可以独立地开发、测试和部署它。问题是每个提供程序扩展的ProviderAbstract类。。。在这种情况下,最好的方法是什么?在每个提供程序包中都有一个类的副本不是解决方案。。解决这种依赖关系的最佳方法是什么


提前谢谢

我不知道这是不是正确的方法。如果您在Monolog或Swiftmailer上有日志,则他们的one composer软件包中都有“提供者”。他们可以开发一个提供者,而无需查看其他提供者,测试它们,然后部署整个包。如果您决定将如此之小的组件放入自己的composer包中,那么最终将导致很大的开销

但是,如果您想继续这样做,您可以将抽象类提取到它自己的composer包中,并让所有其他包将其作为依赖项。这是PSR3记录器接口的使用方式