【发布时间】:2012-05-09 15:49:52
【问题描述】:
我有一个应用程序(旧代码)
包含接口Icomponent 和save() 方法
以及许多实现它的类。
我想在每次 save() 之后添加日志。
更新:
我的设计想法很少:
- Singelton Logger - 将在每个可记录的操作后调用
我认为LogService 是singelton 的经典案例,但我读到它很难进行单元测试。
- 装饰器 + 使用 Ioc 初始化的记录器
使用装饰器模式到Icomponent 和额外的log() 方法。
创建从每个装饰器的log() 调用的LogService 类
- AOP - 面向方面编程
我读过一点,但不知道。
是否适用于c#?
- 您对该解决方案有何设计?
更新2
看了代码,发现还有一层接口
在混凝土层之前。我认为我不应该装饰每个特定的界面。对吧?
I_AComponente : IComponente
I_BComponente : IComponente
A : I_AComponente
B : I_BComponente
【问题讨论】:
标签: c# unit-testing design-patterns .net-3.5 singleton