面向过程及面向对象计算器经典案例

计算器经典案例

面向过程计算器 Rev00

    遇到问题就直觉地用计算机能够理解的逻辑来描述和表达待解决的问题和具体的求解过程,

    这其实是用计算机的方式去思考。


    但这样的思维只为满足实现当前的需求,程序不容易维护,不容易扩展,更不容易复用。

    

面向对象的分析设计思想,通过封装、继承、多态把程序的耦合度降低,

使用设计模式使得程序更加的灵活,容易修改,并且易于复用

    

1.  面向对象计算器_封装版_Rev01

    //找对象
    //调方法
    //得结果
    

2.  面向对象计算器_继承多态虚方法版_Rev02

     main()方法中switch 运算符,返回子类对象给父类,统一调用cal()方法
    

3.  面向对象计算器_抽象类版_Rev03

4.  面向对象计算器_接口版_Rev04    

5.  面向对象计算器_构造方法进行参数传递_Rev05

    添加一个新功能,需要新写一个类,再switch中添加一个新的运算符

    (添加功能不应该修改原来运行很好的程序,这样有风险

所以,就是应该把新增功能和原有功能分解开,模块化

    不要在添加新功能的时候对原运行良好的代码产生影响)
    

6.    面向对象计算器_简单工厂模式 Rev06

    根据运算符创建可用对象--简单工厂模式
    

7.    委托多态计算器 Rev07

     多态是不是只有子类、父类这一种情况?不是
        委托也可以实现多态

8.    计算器终极版_插件机制(反射) Rev08

使用抽象工厂+反射的方式,实现可插拔式的计算器


完美实现了以下功能:

1)可维护:如果要修改功能,只要用新的dll替换旧的dll就可以

2)可复用:程序里面使用的是抽象工厂加反射的方式

3)可扩展:只要将编译好的dll放到Method文件夹中,计算器就具有了执行该dll功能的能力

4)灵活性好:只要将.exe与method文件夹放在一块,程序就可以运行


源代码下载地址:http://download.csdn.net/detail/u013905744/9429347

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值