백엔드
PHP - 정적 팩토리 메소드
정적 팩토리 메서드란 객체 생성의 역할을 하는 클래스 메서드라는 의미로 요약해볼 수 있다.
class Item
{
protected static $itemFactory;
public static function setFactory($callable)
{
self::$itemFactory = $callable;
}
public function create()
{
return $this->createFormFactory();
}
private static function createFormFactory()
{
if (self::$requestFactory) {
$request = \\call_user_func(self::$requestFactory);
if (!$request instanceof self) {
throw new \\LogicException('The Request factory must return an instance of Item.');
}
return $request;
}
return new static();
}
}
참고한 코드 \vendor\symfony\http-foundation\Request.php
https://github.com/symfony/http-foundation/blob/5.3/Request.php
0개 댓글