我正在Spring中开发我的第一个应用程序,但是我遇到了设计问题。我已经创建了一些我想通过一些外观使用的服务(这是个好主意吗?)。 我想要这样的结构
/services
/facades
/interfaces
**facades**
/implementations
**sampleFacades**
/interfaces
**services**
/implementations
**sampleServices**
具有程序包专用服务(接口和实现)。有可能还是我必须将所有类都放在一个包中?
答案 0 :(得分:0)
Facade Pattern旨在创建对更复杂代码的简化且专用的访问。
通常,您将有一个由其他人创建的API,然后您将创建自己的自定义API来使用其他API。
在这种情况下,您似乎在同一Spring Applicaiton中为Services创建了外观,对我而言这没有任何意义。
在控制服务定义时为什么要创建外观?
如果您需要为自己的服务使用外观,也许它们没有在正确的粒度级别上定义?
请注意,服务的某些复杂性应通过其他模式来解决,例如由服务协调的Data Access Objects。
关于将所有类放入同一包的问题,请考虑Domain Driven Design的有界上下文,并围绕域而不是实现细节来组织代码。