对于一个相当简单的问题,我正在努力使用两种不同的设计方法。
我有一项服务(在一般意义上,不是 Web/SOAP 等):
- 接班
Input_ - 用于
Input处理和创建Output本质上只是数据的类,所有这些都依赖于输入数据。
两种不同的设计方法如下:
- 使用一个
OutputCreator知道如何创建和填充的类,Output并将其保留Output为基本的 POCO。拥有所有的OutputCreator处理逻辑,Output非常简单,不能被滥用。 - 或者,将
Input直接传递给特定类型的Output类。每种类型都Output知道如何处理Input,因此它也支持行为。关键Output数据将由每种不同类型Output将实现的接口定义。
第一种方法意味着我可以将所有处理逻辑置于我的服务内部。第二个意味着我不需要Creator封装了该逻辑的类,但我可能会暴露更多(加上它可能违反 SRP)。
哪种方法更接近最佳实践?
谢谢