|
|
1
7
我认为您将单一责任与接口隔离混淆了。 从客户机/服务接口的角度来看,您应该保持合同的精简和刻薄。请参阅下面的示例。 在SRP方面,这应该完全在服务实现内部,客户机不应该意识到这一点。如果服务代码太大,请将其拆分为类。然后让您的服务代码(至少在最初)充当外观,并将所有调用转发给相关对象。稍后,您可以选择将服务拆分为多个服务。但是要注意,SOA和面向对象的设计虽然重叠,但它们是分开的,并且有不同的需求。 接口分离示例:我们在这里有一个服务,用于在一些业务对象上执行各种功能。原始服务有一个接口。随着它的发展,我们意识到我们有三种方法:数据对象持久性、业务更新、业务分析。我们分成三份合同。我们的客户机/服务实现了所有3个,所以我们唯一要做的就是将契约拆分为3个,并在我们的WCF配置中设置另外两个端点。很简单。 希望这有帮助。 |
|
|
2
1
|
|
|
3
1
您可以为与客户机接口的Web服务应用外观模式,并且在您的实现代码中,您可以应用单一的责任来使其可维护。 |