【发布时间】:2019-04-30 07:25:10
【问题描述】:
我真的不知道如何称呼这种方法,但问题是 - 这样做可以吗?我创建了一个实体 Messages 并在该实体中设置了 Connection。
<?php
class Message {
private $connection;
public function setName();
public function setSubject();
public function send()
{
$this->connection->send($this);
}
}
这似乎违反了单一责任原则。
我有服务Mailer,它可以创建Message 实体(里面已经有Connection)。 Mailer 也可以自己发送Message 实体。
还有两种选择,我该如何使用它;
<?php
// First
$mailer->send($message);
// Second
$message->send();
不行,我应该只使用第一种方法吗?
【问题讨论】:
-
消息不会自己发送。
标签: php oop design-patterns architecture