【发布时间】:2012-11-27 13:28:35
【问题描述】:
我正在关注此链接: http://codebetter.com/jpboodhoo/2007/10/15/the-static-gateway-pattern/ 了解网关模式。
作者分享了一个“网关”记录器类和相关接口的示例:
public class Log
{
private static ILogFactory logFactory;
public static void InitializeLogFactory(ILogFactory logFactory)
{
Log.logFactory = logFactory;
}
public void InformationalMessage(string informationalMessage)
{
logFactory.Create().InformationalMessage(informationalMessage);
}
}
public interface ILogFactory
{
ILog Create();
}
public interface ILog
{
void InformationalMessage(string message);
}
这是调用 API
public class Calculator
{
public int Add(int number1,int number2)
{
Log.InformationalMessage("About to add two numbers");
return number1 + number2;
}
}
我无法理解具体日志记录类的初始化在哪里发生。网关的入口点是什么?
【问题讨论】:
-
在文章的底部,作者说:“在这里完成的是一个 ILogFactory/ILog 对的快速实现,它将向控制台输出日志消息(我会留给你提出以下 2 个类的更可测试的实现):"
-
@Ric,感谢您指出这一点。最后,我明白了。在弄清楚那篇文章之前,我有点拒绝继续写这篇文章。
标签: c# design-patterns gateway