适配器模式
/***********************************************************
* 适配器模式 (参照李会军老师的ˇ〃ˇ)
*描述:
*如下代码所示, 原接口IMyInterFace函数Write在己开发完成的代码中大量的用到,
* 但由于业务有变,而要通过IMyInterFace接口调用WriteFactory函数,
* 如果大批量的将Write修改成WriteFactory的话,工作量是疯狂的.
* 这时,适配器模式就有他的优势了
***********************************************************/
public interface IMyInterFace
{
void Write();
}
public class EntLog : IMyInterFace
{
public void Write()
{
Console.Write("EntLog was called!");
}
}
public abstract class logFactory
{
public abstract void WriteFactory();
}
public class FileLog : logFactory
{
public override void WriteFactory()
{
Console.Write("FileLog_WriteFactory() was called");
Console.ReadLine();
}
}
public class EventLog : logFactory
{
public override void WriteFactory()
{
Console.Write("EventLog_WriteFactory() was called");
Console.ReadLine();
}
}
public class FileLog_Adapter:FileLog,IMyInterFace
{
public void Write()
{
WriteFactory();
}
}
public class EventLog_Adapter : EventLog, IMyInterFace
{
public void Write()
{
WriteFactory();
}
}
static void Main(string[] args)
{
//原调用方法
//IMyInterFace IMY = new EntLog();
//IMY.Write();
//修改后调用方法
IMyInterFace IMY = new EventLog_Adapter();
IMY.Write();
}
}
/***********************************************************
* "适配器模式" 和"抽象工厂模式"似乎异曲同工
***********************************************************/

浙公网安备 33010602011771号