나는 다른 클래스의 계층 구조에서 내장 클래스를 가지고 있고, 나는 클래스 이름 예를디자인 패턴을 배우고 있습니다. 이 클래스의 팩토리 패턴을 디자인하도록 도와 주시겠습니까?
class Class1 extends BaseClass
{
public function __construct()
{
parent::__construct();
}
}
class Class2 extends BaseClass
{
public function __construct()
{
parent::__construct();
}
}
class Class3 extends BaseClass
{
public function __construct()
{
parent::__construct();
}
}
에 대한
이외의 동일한 보였다 같은 클래스의 무리를 만들었다 그러나 나는 희망 (실현 클래스 패턴을 사용하여 클래스 [1-3]을 생성하고 클래스 이름을 전달하고 팩토리에 이러한 클래스 중 하나를 반환하게 할 수 있습니다. 이렇게하면 코드가 훨씬 적어 유지 보수가 훨씬 쉬워집니다. 또한,이 구현 제안 어떻게 이렇게하고 싶어 말한다면 :
class Class4 extends AnotherBaseClass
{
public function __construct()
{
parent::__construct();
}
}
노트는 클래스 4는 다른 기본 클래스를 확장하지만 AnotherBaseClass가 보유하고있는 정보의 작은 비트보다 동일한 다른입니다.
지금은이 같은 (내 생각이 시점에서 퍼지 및 불완전) 생각하고있다 :
을 // 난 공장 패턴에게 올바른을 반복 코드
class Skeleton extends BaseClass
{
public function __construct()
{
parent::__construct();
}
}
class ClassFactory
{
public function __construct($className , $classType)
{
<pseudocode>
Class5 = new $className
???and some how make $className extend $classType ???
return class5
</pseudocode>
}
}
을인가 걸었 곳 대답?
건배!
"클래스 이름 이외의 다른 클래스와 동일한 클래스를 만들었습니다."- 절대하지 마십시오. – smartcaveman