重构心法——分解大函数

Posted 掉进书洞里的猫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了重构心法——分解大函数相关的知识,希望对你有一定的参考价值。

不论什么系统,采用什么架构,都应该从“分解大函数”开始,这样做准没错!

分解大函数前的准备

梳理大函数逻辑:认真阅读大函数的源码,添加必要的注释,调整不合理的代码顺序,将代码分段,将前后有明显关系的代码放在一起。

分解大函数实质

其实就是“抽取方法”,将被我们分段、加注释的代码从原函数里边抽取出来,放在一个新的独立的函数中。抽取方法就像“核裂变”,开始由一个大函数裂变为几个函数,这些函数又分别裂变为新的函数,当这些裂变出来的方法越来越多时,后期可以考虑是否要抽取新的功能类。

抽取方法尺度

在抽取方法时,不论你是抽了几行还是上百行,这些代码一定是功能内聚的,说白了就是要执行一个清晰的功能。

抽取秘诀

1.为新方法起一个易懂的名字

2.参数和返回值如有必要最好封装为对象

3.代码重复的地方是抽取函数的重要标志

4.if、for、try等语句块均要留意方法的抽取

备注

          别忘了单元测试!!!

以上是关于重构心法——分解大函数的主要内容,如果未能解决你的问题,请参考以下文章

小酌重构系列[19]——分解大括号

第1章 重构,第一个案例:分解并重组statement函数

小波分解和重构

二维图像haar小波变换的分解与重构

Matlab小波工具箱的使用2

重构.改善既有代码的设计9简化条件表达式