`

提取方法(Extract Method) --代码重构

 
阅读更多

适用场合: 当一个类里的方法的语句过长时,就要采取从该方法中,再提取另外一个方法出来;

 

tag: 类 方法 语句过多 提取

 

 提取时要注意的地方:

 

1. 要提取出来的代码,有几个变量, 在这些代码里,哪些变量是没有改变过,哪些变量改变了;

 

解决方法: 没改变的变量,采用传参的方式传到新提取的方法里; 改变的变量,采用返回值的形式返回;

 

 

2. 举例:

Class Test

{

 

      public void testA()

    {

            int i;

            String str = "a";

            int Count = 0;

     

           for (i = 0; i < 4; i++)

         {

            switch(i)

            case 0: System.out.print(str); Count = Count + 1; break;

            case 1: System.out.print(str); Count = Count + 2; break;

            case 2: System.out.print(str); Count = Count + 3; break;

            case 3: System.out.print(str); Count = Count + 4; break;

         }

    

      System.our.print(Count);

   }

}

 

 现在要从testA()方法里,把switch这一块提出来,做为一个新方法, switch里,str是没有改变的,而Count是经过改变了的,

具体做法:

 

Class Test

{

       public void testA()

      {

               int i;

               String str = "a";

               int Count = 0;

 

               for (i = 0; i < 4; i++)

              {

                     Count = testA_Extract(int i, String str);

               }

         

           System.our.print(Count);

        }

 

       public int testA_Extract(int i, String str)

       {

                 int Count = 0;

                 switch(i)

                 case 0: System.out.print(str); Count = Count + 1; break;

                 case 1: System.out.print(str); Count = Count + 2; break;

                 case 2: System.out.print(str); Count = Count + 3; break;

                 case 3: System.out.print(str); Count = Count + 4; break;

                 

                return Count;

         }

 }

分享到:
评论

相关推荐

    重构----改善既有代码的设计(完整中文扫描版PDF)

    重构的过程包括了一系列的小步骤,比如:提取函数(Extract Method)、移除重复代码(Remove Duplication)、内联函数(Inline Method)、提炼类(Extract Class)、内联类(Inline Class)等。通过这些具体的重构...

    重构--改善既有代码的设计

    1. **提取方法(Extract Method)** - 描述:将一段代码从现有函数中抽取出来成为一个独立的方法。 - 目的:提高代码的复用性和可读性。 2. **内联方法(Inline Method)** - 描述:将一个方法的实现直接嵌入到调用...

    重构_重构_改善既有代码_

    1. 提取函数(Extract Method):将大段代码提炼为一个独立的函数,使得代码更专注,更易于理解。 2. 内联函数(Inline Method):如果一个函数只在一个地方被调用,可以将其内容直接替换到调用位置,减少层次,提高...

    英文版(重构改善既有代码的设计)

    - **提取方法**(Extract Method):将一段代码从一个方法中提取出来成为一个新的独立方法,使其更加专注和简洁。 - **内联方法**(Inline Method):将一个方法调用替换为其实际实现的代码,从而消除不必要的方法...

    重构-改善既有代码的设计+中文版

     Extract Method 提取方法   Inline Method 内联方法   Inline Temp 内联临时变量   *Replace Temp with Query 用查询方法代替临时变量   Introduce Explaining Variable 引入解释性变量   Split ...

Global site tag (gtag.js) - Google Analytics