2017-08-08 57 views
2

我有新的项目和代码的工作是一个烂摊子服务类。我们做了一些重构,其中一个要求是服务层不会导入任何jax-rs软件包。这是非常难以实现的无方法控制器完全重写(而不是将它们移动到服务,因为它们是),因为该代码是一个紧密耦合面条。这是一个合理的要求吗?是进口的球衣和JAX-RS在被认为是不好的做法

+0

如果您认为传统的“分层”架构(数据中心 - >业务 - >演示),下层不应该知道的更高层。就个人而言,我会坚持这一点。这有很多好处,这是使用它的主要原因。如果好处不超过重构的成本,那就不要这样做。但请考虑未来的成本,这将伴随缩放和维护以及“意大利面条”代码会导致的问题。 –

回答

0

您可能希望应用六方(端口和适配器)架构原理分离高层的关注,例如有:

  • 包含应用程序的服务接口及其实现应用服务层。
  • 包含控制器接口的开放主机服务层(取决于JAX-RS API)和它们的实现(取决于如新泽西州的JAX-RS API实现等):该实施方式中只使用应用服务接口适当。

我想推荐你参考本书对于进一步的细节: «Implementing Domain-Driven Design», 1st Edition, Vaughn Vernon。考虑使用关键字:“应用服务”,“开放主机服务”,“六边形”,“端口和适配器”。

相关问题