다른 종류/클래스의 다른 인스턴스를 만듭니다.또 다른 "패턴이 맞습니까? 그렇다면 이름이 무엇입니까"?
간단한 예 : ORM을 사용하고 있고 데이터베이스에 이메일 큐를 저장하고 있습니다. 그런 다음 제 3 자 라이브러리를 사용하여 대량 메일을 보내야합니다.
개체 (단순위한 PHP 여기에 관련이없는, 공용 속성) :
class Mail
{
/**
* @var string
*/
public $senderText;
/**
* @var My\App\Entity\User
*/
public $user;
/**
* @var \Doctrine\ORM\ArrayCollection
*/
public $attachments;
}
... 목적은 지금까지 다른 사용자의 타사 "메일"된다. 예를 들어, 다음과 같이해야 할 수도 있습니다.
$mail = /* hydrated */;
$user = $mail->getUser();
$mailer = new ThirdPartyMailer();
// Fill message properties
$message = $mailer->createMessage();
$fullName = sprintf('%s %s', $user->getFirst(), $user->getLast());
$message->addFrom(array($fullName => $user->getEmail()))
// Create and add attachments
foreach($mail->getAttachments() as $attachment)
{
$message->attach($mailer->createAttachment($attachment->getFullPath()));
}
패턴입니까? 뭔가 다른 것에서 하나의 인스턴스를 생성/변환 할 책임이있는 클래스와 같은 객체 변환기와 같은 것 ...
이것은 실제로 코드 질문이 아닙니다. 전문 용어 문제이며 대신 [Programmers] (http://programmers.stackexchange.com)에 있어야합니다. 이주 투표. –
@KenWhite, 오케이, 죄송합니다. 나도 투표 중이 야. 편집하다. 마이그레이션을 위해 투표 할 수 없습니다 ... – gremo