2016-10-04 12 views
0

DDD Factoryはドメインオブジェクトのプロパティを直接設定できますか? ような:DDDファクトリとドメインオブジェクトのプロパティ

public class DomainObjectFactory 
{ 
    public DomainObject CreateForUser(int userId) 
    { 
     var domainObject = new DomainObject(); 
     domainObject.UserId = userId; 
    } 

} 
+0

これは、常に有効なパラダイムに従わないことを意味します。私はこのアプローチに賛成する傾向がありますが、誰もがそうではありません。 – plalx

答えて

4

通常の方法ドメインエンティティを作成することは、コンストラクタ(S)でそうするだろう。したがって、1つまたは複数のコンストラクタを通じて必要なパラメータを受け入れます。

ドメインファクトリを使用する場合は、何も変更されません。ドメインファクトリは、エンティティの作成がより複雑な場合(たとえば、複数のオブジェクトや作成中にロジックが含まれている場合など)、エンティティのコンストラクタを使用してオブジェクトを作成する場合に使用されます。

関連する問題