函数重构

来源:互联网 发布:淘宝找同款原理 编辑:程序博客网 时间:2024/06/05 07:56

函数重构发生在什么时候

1、编写代码时

      编写的过程中一旦发现函数逻辑有点儿复杂,就要进行函数的重构。(这应该是函数重构最重要的时刻)

2、维护代码时

     1)  添加功能时,如果发现函数过于复杂,要进行函数的重构。

     2) 修改bug如果发现函数很难理解,很难维护,也要进行函数的重构。


重构3原则

原则1: 函数主题超过10行就意味着可能需要进行重构。

             1)函数要一样就能看出来在做什么

             2)编写代码的时候,一旦发现一个函数超过了10行,就要试图重构。

             3)函数主体不包括参数检查和是否需要进行处理的判断。


函数结构如何设计 

原则2: 要区分出不需要处理和需要处理的情况。

               在做主体处理之间要先排除不需要的情况:

                1)判断参数是否合法。

                2)判断内部状态或数据错误是否正确。

                3)对于这些不需要处理的情况,直接return或return错误。

                 内部数据或状态

参数                 函数                  结果


函数的三段式

XXX FUNC(......){            //  参数合法性判断            //  排除掉不需要做处理的情况            //  正常的处理}


函数逻辑如何设计

原则3: 要把What to do 和 How to do放在不同的函数

                1)What to do 和 How to do是不同抽象层次的事情,应该放在不同的函数中

                2)复杂的函数(需要重构的函数)往往是因为做了不同抽象层次低的事。


主函数:写做哪些事情(what to do)

主函数的主体只需要体现出来三种类型的结构: 分支结构、顺序结构、循环结构。

每一个处理都是一条赋值语句或调用一个子函数。(What to do)

How to do : 子函数1  子函数2  ... ...