Factory--------创建型设计模式之二

原创 2004年07月08日 11:26:00

创建型模式由一个对象的接口和一个具体的类组成,该控制类决定在运行的时候该创建那个具体的对象,该模式在应用程序的日志处理中非常有用,比如在写日志的是采用写到文件中还是数据库中.

class Logger
{
 virtual void LogError() = 0;
 virtual void LogError(CString strErr) = 0;
};
class DBLogger:public Logger
{
public :
  void LogError()
  {
   //do here log
  }
  void LogError(CString strErr)
  {
   //do here log
  }
};
class FileLogger:public Logger
{
public:
 void LogError()
 {
  //do log here
 }
 void LogError(CString strErr)
 {
  //do log here
 }
};
class LogFactory
{
 private:
  LogFactory()
  {}
 public :
  static Logger* GetLogger(int itype)
  {
   if(itype == 1)
    return new DBLogger();
   else
    return new FileLogger();
  }
};
class Log
{
public:
 Log()
 {
  pLog = NULL;
  iType = 1;
 }
 void SetType(int itype)
 {
  if(itype == iType)
   return;
  pLog = LogFactory::GetLogger (itype);
  iType = itype;
 }
 void LogError()
 {
  pLog->LogError();
 }
 void LogError(CString strError)
 {
  pLog->LogError(strError);
 }
private:
 Logger* pLog;
 int iType;
};

设计模式分类(创建型模式、结构型模式、行为模式)

1.创建型模式 前面讲过,社会化的分工越来越细,自然在软件设计方面也是如此,因此对象的创建和对象的使用分开也就成为了必然趋势。因为对象的创建会消耗掉系统的很多资源,所以单独对对象的创建进行研究,从而能...
  • itpinpai
  • itpinpai
  • 2016-04-25 18:51:27
  • 9223

设计模式学习之创建型模式学习总结

    最近在家疯狂充电,学完深入挖掘asp.net2.0的课程之后,就开始了我的《面向对象设计模式纵横谈》课程。之前对设计模式有所了解,所以这次系统去学习和实践也还是蛮有意思的! 至于为什么要学习设...
  • c_dotnet
  • c_dotnet
  • 2007-08-21 00:35:00
  • 555

大话设计模式宏观总结——创建型&结构型&行为型

总结三种类型的设计模式的区别和联系
  • sun15732621550
  • sun15732621550
  • 2016-02-01 12:32:03
  • 1781

六种创建型设计模式的比较和总结

一、描述 创建型设计模式包括如下几个:简单工厂模式(Simple Factory)、工厂方法模式(Factory Method)、抽象工厂模式(Abstract Factory)、创建者模式(Bui...
  • tongyuehong
  • tongyuehong
  • 2015-05-02 15:46:41
  • 1537

设计模式--六种创建型模式

前言   每几种模式之间都有一定的联系,从中发现它们的相同点和不同点,研究发生改变的节点,这就是本篇博客所要说明的创建型设计模式之间的联系。它们包括:简单工厂模式、单例模式、工厂方法模式、抽象工厂...
  • m18633778874
  • m18633778874
  • 2017-04-13 16:58:25
  • 489

23种设计模式分析(1):创建型模式

设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。   毫无疑问,设计模...
  • zhoudaxia
  • zhoudaxia
  • 2014-04-04 17:47:02
  • 7189

设计模式--创建型模式比较

http://blog.csdn.net/myjoying/article/details/7884103 在GoF的《Design Patterns: Elements of Resu...
  • jeffasd
  • jeffasd
  • 2016-06-13 22:46:12
  • 237

设计模式(总结)---创建型设计模式

创建型设计模式: 简单工厂模式: 当代吗使用具体类时,一旦加入新的具体类,就必须要改变代码。我们希望在生成对象的时候,不使用new+具体类的名称,而是希望调用一个简单的方法,传递一个参数过去,就可...
  • define_us
  • define_us
  • 2016-05-04 22:47:25
  • 221

java设计模式创建型模式代码讲解

  • 2017年11月29日 13:31
  • 19KB
  • 下载

创建型--工厂模式

问题: 当发现要添加新的类型到系统中,最明智的首要步骤是用多态机制为这些新类型创建一个共同的接口,这样便实现了旧代码与新代码的分开,添加的代码并不会扰乱已存在的代码。然而,这样做出现两个问题: 1...
  • WeiPidong
  • WeiPidong
  • 2014-09-23 15:40:25
  • 339
收藏助手
不良信息举报
您举报文章:Factory--------创建型设计模式之二
举报原因:
原因补充:

(最多只允许输入30个字)