假设我正在创建一个 MATH 类并且需要提供一种方法来处理两个数字。[
我没有为每个可能的操作提供具有方法的传统机制,而是提供了一个方法 eval:float eval(ArgObj);
whereArgObj
是一个可以容纳两个数字和一个运算符的对象。因此,现在使用一种方法我可以执行多项操作。
这种设计有什么缺点?
两个特定的缺点是维护和文档,因为 eval 获得了处理更多操作的能力。
我在这里错过的其他缺点是什么?
更新:我想弄清楚的是大型整体方法的负面影响,上面的例子只是假设另一个类似的例子是这样的方法
float doSomething(int basedOn)
其中 doSomething 可以做一堆操作。