记录或记录系统内部完成的每项操作(业务逻辑)的好设计模式是什么?
假设我想写一个小日志或通知用户每个操作?例如,在系统中,您可以为您的房屋订购清洁服务,我想在每个步骤后给用户反馈:
订购清洁服务> 正在进行清洁> 清洁已完成
我在想Observer模式,但我有点困惑。感谢。
答案 0 :(得分:3)
如果您希望每次/事情/事情都要记录,那么这就是所谓的交叉问题。通过这个我的意思是发生/在正常操作之外的事情 - 它发生在任何地方。看看Aspecxt定向编程(AOP) - 日志记录是一个经典的AOP问题。 http://en.wikipedia.org/wiki/Aspect-oriented_programming了解更多信息。
答案 1 :(得分:2)
你想要的东西被认为是一个贯穿各领域的关注点。看看面向方面的编程。您可以编写在方法调用上执行的代码,您可以根据语义java签名选择方法调用。
这会将您的日志记录问题与业务逻辑问题分离开来。您应该在AspectJ文档中找到一些直接的示例。
http://eclipse.org/aspectj/doc/released/progguide/starting-development.html#profiling-and-logging