大话设计模式(C++)第一章-简单工厂模式

本文探讨了如何使用面向对象的设计思想改进简单的计算器程序,以提高代码的可维护性和复用性。简单工厂模式包括工厂类、抽象产品类和具体产品类。通过该模式,当需要新增运算类型时,只需扩展具体产品类和工厂类的switch语句,实现松耦合。文中提供了C++实现的示例代码。
摘要由CSDN通过智能技术生成

问题:写一个简单的计算器。

普通的写法:

#include<iostream>

using namespace std;

int main()
{
    double NumberA,NumberB;
    cout<<"请输入数字A: ";
    cin>>numberA;
    cout<<"请输入数字B: ";
    cin>>numberB;
    double Result = 0;
    swtich(Result)
     {
        。。。。
        。。。。。。
        。。。。。。。
    }
    。。。
    。。。。。。
    。。。。。。。。
    cout<<"结果是:"<<Result<<endl;
    
    return 0;
}

 

思路本身和代码设计本身没有错,但是这样的思维却是我们的程序只为满足当前的需求,程序不容易维护,不容易扩展,更不容易复用。从而达不到高质量代码的要求。

采用面向对象的分析设计编程思想,通过封装、继承、多态把程序的耦合度降低,用设计模式使得程序更加灵活、容易修改、并且易于复用。

简单工厂模式包含三个角色:

(1)工厂类Factory:工厂类是用来制造产品的。因此,在Factory中有一个用于制造产品的Create函数或者Generate函数之类的函数。这个函数能够根据“标识符”的不同生成不同的ConcreteProduct,当然这些ConcreteProduct都是继承自Ab

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值