c# 窗体是否有重用的必要

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c# 窗体是否有重用的必要相关的知识,希望对你有一定的参考价值。

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


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


技术分享

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


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

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

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


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

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

以下内容转载:

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

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

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

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


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


本文出自 “大写的XYZ” 博客,请务必保留此出处http://lijuanfei.blog.51cto.com/9215551/1871890

以上是关于c# 窗体是否有重用的必要的主要内容,如果未能解决你的问题,请参考以下文章

C#关于winform窗口控件过多,显示慢的问题?

C#多窗体和菜单工具栏

c# winform中mdi子窗体激活问题

C# winform 父窗口子窗口按钮控制

C#窗体记住密码和自动登录怎么弄

C# WinForm中,如何判断窗口已打开