定义新类:以货币转换为例的 Smalltalk 编程实践
1. 面向对象编程中的类定义核心任务
在面向对象应用程序开发中,定义合适的类及其方法是核心任务之一。这些类的对象行为需恰当模仿现实世界的对象。在不同应用场景中,这些对象各不相同。例如:
- 商业应用:产品、合同、投标和客户等。
- 几何应用:线、圆和矩形等。
- 机械 CAD 系统:螺丝、螺母、齿轮和发动机等。
使用类和方法等程序设计元素精确复制现实世界对象是一项复杂的任务,需要程序开发者与各应用领域专家进行深入对话。在复杂软件系统开发中,多数错误往往出现在将应用知识转化为软件设计的过程中,这些错误常源于参与团队间的误解。
2. 案例研究:货币转换问题
假设要为一个国际运营的网络商店开发程序,该应用中会遇到以不同货币显示价格的问题,因此需要将价格从一种货币转换为另一种货币。这就要求程序具备使用各种“货币转换器”的能力,可将这些转换器视为知道各自汇率的类的实例。
以下是工作区中的测试程序:
| euroToDollar dollars |
euroToDollar := Converter withExchangeRate: 1.55.
dollars := euroToDollar convert: 227.0
第二行中, withExchangeRate: 1.55 消息发送给 Converter 类,该类应创建一个使用汇率 1.55 进行金额转换的实例。第三行中,
超级会员免费看
订阅专栏 解锁全文

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



