我在尋找關於這個問題的建議,以及是否service locator和類命名約定是一個好的解決方案(我傾向於避免這些反模式),以及潛在的性能後果。 應用程序具有實現相同接口的對象集合,按名稱區分。例如: public interface IDog {
void Bark();
}
public class Pug: IDog {
public void Bark() {
通常,Factory類包含類似getObject的方法。 從而 class Factory
{
private $type;
function __construct($type)
{
$this->type = $type;
}
function getObject()
{
//example for br
假設我有下面的類層次結構: class abstract Parent{}
class FirstChild extends Parent {}
class SecondChild extends Parent {}
而且我想創建DTO從每個子對象: class abstract ParentDTO {}
class FirstChildDTO extends ParentDTO{