最近自学Python,想做些小项目练练手,发现程杰写的大话设计模式这书不错,适合新手入门。开始这本书第一章学习,这里实现简单工厂模式。以实现图形界面的简易计算器为实例,能够计算+-/*% ( )等混合表达式,ps: 没有实现负数的功能。具体过程大致分为以下几个步骤:
- 定义只计算两个数的运算类 Operation
- 继承Operation类,实现+-*/%子类
- 定义运算工厂OperationFactory
- 定义混合运算类MixedOperation
- 定义图形界面显示类Display
1. 定义只计算两个数的运算类 Operation
定义两个成员变量,及一个成员函数:
class Operation:
number_a = 0
number_b = 0
def get_result(self):
return 0
2. 继承Operation类,实现+-*/%子类
如定义加法类OperationAdd,重写get_result()方法:
class OperationAdd(Operation):
def get_result(self):
return self.number_a + self.number_b
3. 定义运算工厂OperationFactory
这就是这一章用到的简单工厂模式,通过实例化对象来完成某一种运算需求。这里用到Python的字典来实现如C++语言中的switch功能。
class OperationFactory():
@staticmethod
def create_operation

本文通过Python实现简单工厂模式,以创建一个能计算+-/*%的图形界面简易计算器为例,介绍了如何定义运算类、继承并实现子类、创建运算工厂以及设计图形界面显示类。虽然未实现负数功能,但提供了完整的代码资源链接供读者参考。
最低0.47元/天 解锁文章
869

被折叠的 条评论
为什么被折叠?



