我正在创建一个计算器类,我希望将来能够扩展它。我无法决定是否应该让未来的类将其子类化,或者是否应该让每个扩展成为一个新类别。哪个是更好的选择?
如果我想在将来添加它,我无法决定扩展这个计算器类的最佳方式。我应该让每个用户将其子类化,还是添加他们想要添加的一类方法。
我想做的是,如果用户想要定义一个新操作,比如“+*”,他们可以在一个新类别中定义它并给我一个选择器,这样我就可以将所有操作存储在 Dictionary 中并选择要计算的方法结果。
例如,
SEL method = NSSelectorFromString (
@"plusTimesWithArgA:andArgB:";
);
[self performSelector:@selector(method) withObject:operandA withObject:operandB];