我想知道我们是否可以应用设计模式来编写货币转换代码,如果是,那么它们会是什么?假设是转换率是静态的,我们可以对它们进行硬编码。货币换算的设计模式?
我曾考虑过使用'状态模式',其中每个状态代表一个特定的货币,并将公式封装到相应的转换方法中。 'toDollars()','toPounds()'等。
另一种可能性(不确定它是否是设计模式)是使用函数对象从特定货币转换为另一种货币,其中第一级密钥是'from'货币,第二级密钥是'to'货币。
是否有任何其他设计模式适用于此问题?从最抽象的层面来看,问题在于我们有“实体”,它们都是基于一些特定的规则进行相互转换的。例子是将时区值相互转换;日历日历从不同的日历类型(格里高利/中国)等等。
感谢和问候!