没有二传手的学说

Doctrine without setters

我一直在阅读有关领域驱动设计的内容,并且实体不应该有 setter。在构造函数中传递属性是有意义的,因此对象是实体的。有没有办法在这种实践中使用 Doctrine ORM?

class User
{
    private $firstname;

    public function __construct($firstname)
    {
        $this->firstname = $firstname;
    }
}

Doctrine 如何处理这种设置?有什么缺点吗?

你会遇到很多缺点,比如: