【发布时间】:2014-01-28 00:11:57
【问题描述】:
记录或记录系统内部完成的每个操作(业务逻辑)的良好设计模式是什么?
假设我想写一个小日志或通知用户每个操作?例如,在系统中,您可以为您的房子订购清洁服务,我想在每个步骤之后给用户反馈:
已订购清洁服务>清洁正在进行中>清洁已完成
我在考虑观察者模式,但我有点困惑。谢谢。
【问题讨论】:
-
观察者模式可以成为您设计的一部分,但我认为在每个 Y 之后执行 X 没有特殊的模式。这取决于您的代码以及您希望如何访问该日志(还是每个实体甚至超过 1 个?)。例如,您可以使用观察者模式将其设计得有点像控制台记录器(
OperationLog.add(Something)-> 通知观察者 -> 观察者可以刷新日志并显示更新的数据)。 -
你需要看看面向方面的编程(AOP)
-
也许您正在寻找 Domain Events 和 Event Sourcing。
标签: java design-patterns domain-driven-design observer-pattern