当你没法迅速的理解一个方法的逻辑时,把方法的逻辑转换成几个同一层面上的、可以说明意图的步骤。
动机:
Composed Method由对其余方法的调用组成,好的Composed Method的代码都在细节的同一层面上。
Composed Method通常不会引入性能问题
优缺点:
+ 清晰的描述了一个方法所实现的功能以及如何实现
+ 把方法分解成命名良好的、处在细节的同一层面上的行为模块,以此来简化方法
- 可能会产生过多的小方法
- 可能会使调试变得困难,由于程序的逻辑分散在许多小方法中
Composed Method指导原则:
Composed Method都很小。通常在5行左右,不多超过10行
删除重复代码和死代码。除去明显的和微妙的代码重复,除去没有被使用的代码,以减小方法的代码量
表达意图。清楚的命名程序中的变量、方法和参数,使它们明确表达意图。
简化。转换代码,使它尽量简单。
使用细节的统一层面。当把一个方法分解成一组行为时,要保证这些行为在细节的类似层面上。