简而言之,就是分解长方法,重用逻辑,也就是将功能内聚的一块代码组织为方法/函数。这样重构之后,可以有效的对代码按功能内聚进行分层组织,增加代码的可读性和可维护性。
示例:
void printOwing(double amount)
{
printBanner();
//print details
System.out.println ("name:" + _name);
System.out.println ("amount" + amount);
}
void printOwing(double amount)
{
printBanner();
printDetails(amount);
}
void printDetails (double amount)
{
System.out.println ("name:" + _name);
System.out.println ("amount" + amount);
}
为了减少不必要的代码层次,将某些方法/函数取消,将它展开到调用者的代码中。
示例:
int getRating()
{
return (moreThanFiveLateDeliveries()) ? 2 : 1;
}
boolean moreThanFiveLateDeliveries()
{
return _numberOfLateDeliveries > 5;
}
int getRating()
{
return (_numberOfLateDeliveries > 5) ? 2 : 1;
}