winform程序中的代码重用问题?

来源:百度知道 编辑:UC知道 时间:2024/05/15 13:16:02
RT;比如windows附件自带的计算器程序,查看-科学/简单 两个界面有很多功能是相同的,能不能共用代码?应该怎么做?

几种办法:
第一种,把共有的功能抽象出一个基类来,比如一个CalculateBase,然后简单计算器和科学计算器分别继承这个基类,并实现各自特有的方法。SimpleCalculate : CalculateBase, ScientificCalculate : CalculateBase。
第二种,把共有的功能封装到一个工具类中,不同界面的相同功能都是对这个工具类中方法的调用。参考.Net的Math类。
第三种,可以使用命令模式。定义一个接口ICalculate,里面只有一个方法,object DoCalculate(object[] args),然后每一个功能都实现这个接口,在主程序模块中使用反射的方式加载这个功能模块。这种方式有很好的扩展性,添加新的功能时不需要修改原有的代码。

如果是想对界面进行重用,可以考虑将经常使用的部分封装成控件。

建个类不就完了