1
DDDで工場を使用するのに正しいまたは提案された方法はどれですか?DDDのファクトリーパターン
ファクトリメソッドは、アプリケーションサービスから必要なすべてのパラメータを受け取るか、リポジトリを挿入して必要なデータを工場に取り込むことができますか?あなたは工場にサービスを注入するために許可されている
public class UserTokenFactory : IUserTokenFactory
{
IUserTypeResourceRepository _userTypeResourceRepository;
public UserTokenFactory(IUserTypeResourceRepository userTypeResourceRepository)
{
_userTypeResourceRepository = userTypeResourceRepository;
}
public async Task<UserToken> CreateWithAsync(User user)
{
var userTypeResources = await _userTypeResourceRepository.GetByUserTypeIdAsync(user.UserTypeId);
//Some logic for creating user tokens
throw new NotImplementedException();
}
}
又は(実施例2)として
public class UserTokenFactory : IUserTokenFactory
{
IUserTypeResourceRepository _userTypeResourceRepository;
public UserTokenFactory(IUserTypeResourceRepository userTypeResourceRepository)
{
_userTypeResourceRepository = userTypeResourceRepository;
}
public UserToken CreateWith(User user, List<UserTypeResource> userTypeResources)
{
//Some logic for creating user tokens
throw new NotImplementedException();
}
}
ISPの意味ですか? – Robert
インタフェース分離主体 – tomliversidge