编写一段满足设计原则的程序
时间: 2024-05-09 14:20:59 浏览: 68
为了满足设计原则,我编写了以下程序:
```python
# 设计原则:单一职责原则、开放封闭原则、依赖倒置原则
# 单一职责原则:每个类只负责一个功能
class Calculator:
def add(self, a, b):
return a + b
def subtract(self, a, b):
return a - b
def multiply(self, a, b):
return a * b
def divide(self, a, b):
if b == 0:
raise ValueError("Cannot divide by zero")
return a / b
# 开放封闭原则:对扩展开放,对修改关闭
class TaxCalculator:
def __init__(self, calculator):
self.calculator = calculator
def calculate_tax(self, income):
tax_rate = 0.25
tax = self.calculator.multiply(income, tax_rate)
return tax
# 依赖倒置原则:高层模块不应该依赖底层模块,两者都应该依赖抽象
class TaxReport:
def __init__(self, calculator):
self.calculator = calculator
def generate_report(self, income):
tax_calculator = TaxCalculator(self.calculator)
tax = tax_calculator.calculate_tax(income)
report = f"Income: {income}, Tax: {tax}"
return report
```
这个程序包含了三个类,每个类都满足一个或多个设计原则:
- `Calculator` 类只负责四个基本运算,满足单一职责原则。
- `TaxCalculator` 类通过依赖注入 `Calculator` 对象来计算税收,满足依赖倒置原则。
- `TaxReport` 类通过依赖注入 `Calculator` 对象来生成报告,同时使用 `TaxCalculator` 类来计算税收,满足开放封闭原则。
这个程序的设计使得它易于扩展和修改,同时也易于理解和维护。
阅读全文