重构改善既有代码的设计《六》重新组织函数
6.1Extract Method(提炼函数) 1,你有一段代码可以被组织在一起并独立出来 将则这段代码房间一个独立函数中,并让函数名称解释该函数的用途 void printData ( double amount ) { printBanner ( ) ; //print detail System . out . println ( "name:" + _name ) ; System . out . println ( "amount:" + amount ) ; } 修改成: void printData ( double amount ) { printBanner ( ) ; printDetail ( amount ) ; } void printDetail ( double amount ) { System . out . println ( "name:" + _name ) ; System . out . println ( "amount:" + amount ) ; } 2,动机 如果每个函数的粒度都很小,那么函数复用的机会就很大 这会使高层函数读起来象一系列注释 如果函数都是细颗粒度,那么覆写也会更加容易 3,做法 创建一个新函数,根据这个函数的意图命名(做什么) 将提炼的代码从原函数复制到新建目标函数中 检查是否有“仅用于被提炼代码段”的临时变量