目前我正在从搜索结果(来自不同的单一资源)构建一个视图对象,如下所示:
ViewObject vo = searchResultToViewObjectMapper.map(searchResult);
这很好用.
但是,现在我想添加一些图片.这些图片是网址,我只能通过搜索结果来源之外的其他资源来确定其位置.
我的第一个想法是使用Builder Pattern,它会变成:
ViewObject vo = viewObjectBuilder.build(searchResult);
并且viewObjectBuilder将执行以下操作:
private SomeOtherResourceRepository someOtherResourceRepo;
private SomeUrlBuilder someUrlBuilder;
private SearchResultToViewObjectMapper searchResultToViewObjectMapper;
public ViewObject build(SearchResult) {
ViewObject vo = searchResultToViewObjectMapper.map(searchResult);
String reference = someOtherResourceRepo.getOtherResource(searchResult);
String urlToOtherResource = someUrlBuilder.build(reference);
vo.setUrlToOtherResource(reference);
return vo;
}
问题是:这是一个好方法吗?或者还有其他(更好的)方法吗?我也很好奇DDD方法如何做到这一点.
提前致谢!