我目前正致力于重构一个应用程序。这是一家租赁公司的申请。该应用程序通过web服务与外部系统通信。状态中的某些更改或某些事件需要调用外部系统。我们有两种类型的电话:
应用程序的设计没有为外部系统的数量增加做好准备(在每个版本中,我们至少添加了一个系统)。我们有一个层(逻辑)处理所有的业务逻辑,并与外部系统进行通信(包括构建请求、验证请求、发送消息、验证响应、处理响应)。
我想把沟通部分和商务逻辑部分分开。在这种情况下,什么样的设计模式是好的?我读过设计模式@ sourcemaking.com,也读过企业应用体系结构模式目录@ Martin Fowler's,但是要么我无法使用,要么我看不出我可以使用它的方式(很可能是后面的:-)。
发布于 2012-07-20 08:08:05
六角形建筑!:) - http://alistair.cockburn.us/Hexagonal+architecture
这是一种将业务逻辑与应用程序接收事件并将事件发送到外部世界的方式分开的好方法。
六角形架构模式可能有点过高,所以我通常建议在此之前阅读依赖反演原理,以了解模型应该如何公开后来由适配器实现的接口。
发布于 2012-07-20 08:52:16
我建议您尝试使用中介模式,...i从您的参考urls中提取这一点。模式/中介 --我认为这可以很容易地解决意大利面代码的问题,因为太多的通信逻辑与biz逻辑混合在一起。
请告诉我这是否有帮助:)
https://stackoverflow.com/questions/11575101
复制相似问题