C#方法封装与重构

C#作为一个完全面向对象的语言,有个特性很重要但是往往会不重视,而不重视的结果就会造成代码杂乱难以解读、维护。这个特性就是封装。

这里不是大谈C#的封装,我只讲一个,关于方法封装的一些问题。

方法可以说是类或者对象的一些业务逻辑,那在什么情况下需要封装成方法呢:

1、功能相对独立

2、多处复用

3、一个方法体过于冗余或者实现逻辑过多

4、公开处理内部数据接口(也可以用属性)

如果满足上面的任何一个条件,就可以考虑封成独立的方法了,这里又涉及到一个概念——重构。好的代码都是重构出来的,没有谁能一步登天(起码我们这些小菜鸟做不到)。代码的杂乱很大一部分原因是由于作者的思维、逻辑混乱,复杂的问题简单化了,或者简单的问题复杂化了。所以重构的第一步是要理清自己的逻辑,逻辑清楚了,算法自然就出来了,接下来做的就是把算法用代码实现的问题了。

对于重构有个原则:需而为之,不需而不为。重构也不尽然都是好,毕竟一开始的想法很有可能是相当不错的,如果要推翻,得有充足的理由,所以,重构也是有成本的,很可能又引入一些新的bug也难说。就我个人而言,是个比较喜欢折腾的熊孩子,顶多折腾了半天回到原点,不过折腾多了也会有些门道的。建议大家多折腾,丑话说在前头,折腾前做好备份~

这里也说一下对方法的要求,当然是整洁的方法要求:

1、短小,尽量不要超过一屏

2、独立,一个方法只做一件事

3、方法名要见名知意、风格一致,前者让人一看就知道方法做什么,后者别人可以推断这个函数的作用

4、参数不要超过3个,超过的话就提取为对象。

北大青鸟网上报名
北大青鸟招生简章