最近在做一个数据分析的软件,分析结果使用ListView来展示,本来直接写代码就可以了,但是,我发现 垂直净距分析,水平净距分析,碰撞分析,覆土分析(4个模块),以后可能还会有其他模块的 窗体是及其相似的。


那么,我是不是可以写一个窗体,然后其他4个模块共用一个窗体呢。


wKioL1gljP2wrHCzAAAoISVfwRE969.png-wh_50

每个窗体都类似于这种情况的。


思路一:写一个完整的窗体,然后在根据每个模块的不同,对相应的控件进行隐藏

思路二:不公用一个窗体,而是将实现的代码写在一个Common类中,实现代码的重用

思路三:(这个站在通用角度讲)将类似的窗体写成一个,在这一个窗体中采用panel 来进行设计,每个模块对应私用的panel 和窗体本身公用的panel。这样的话,虽然减少了窗体,但是增加了panel,按照这种思路设计的代码冗余量太多。


最终我选择思路二中的方法,将可能重用的代码提取出来了。

另外看到他人博客上关于减少代码冗余的忠告:

以下内容转载:

1:尽量让一个人来写相关功能模块,不要把一个独立的模块分给多个人写代码。(不用你提醒,改多了他自己就知道优化代码,减少代码的冗余)

2:业务要清晰,业务不清晰不可避免的写冗余代码,(所以需要一个好的产品)

3:封装方法的时候,最小模块化,就是一个方法的封装,要保证这个方法就是一个最小单元,以后用于都不可能变。

4:层层封装方法。需要结合3来使用,最小模块化方法封装好后,剩下的就是组装最小模块,完成更加复杂的功能。层层封装也要求每一次封装都是一个最小单元。


如果做到上面的4点,你的代码冗余肯定可以减少很多.