1、Extract Method(提炼函数)
将一段可以被组织在一起并可以独立出来的代码放进一个独立函数中,并让函数名称解释该函数的用途。
- 如果每个函数的颗粒度都很小,那么函数被复用的机会就更大,复写也会更容易些,也会使高层函数越多企鹅来就像一系列的注释。
private void PrintOwing(int amount){
int[] integers = _orders.integers();
double intSum= 0;
//print banner
System.Console.Write("*****************************" );
System.Console.Write("****** Sum Of Integers ******" );
System.Console.Write("*****************************" );
//calculate sum
for(int i = 0;i<integers.Length;i++){
intSum += integers[i];
}
//print details
System.Console.Write("name:" + _name);
System.Console.Write("sum:" + intSum);
}
/*↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓等价于↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓*/
private void PrintOwing(int amount){
PrintBanner();
double intSum = GetIntSum();
Detaile(intSum);
}
private void PrintBanner(){
System.Console.Write("*****************************" );
System.Console.Write("****** Sum Of Integers ******" );
System.Console.Write("*****************************" );
}
private void GetIntSum(){
int[] integers = _orders.integers();
double intSum= 0;
for(int i = 0;i<integers.Length;i++){
intSum += integers[i];
}
}
private void Detaile(double intSum){
System.