Composed Method
個人的にはこれが最重要なパターンだと思ってたり。Composedなメソッドはreadabilityが高くなるんだよね。
Composed Method
メソッドを書いていくほどに行数は増えていく。そんときはShort Methodを使うべき。メソッドではいろんな処理を行っているし、それらはお互い関連しあっている。
∴ 長くて複雑な処理を行っているメソッドをいくつかの小さなメソッドに分割しなさい。(分割したメソッドのスコープはprivateかprotectedでね。) そうすると、そのメソッドは「長くて複雑な処理」を行うメソッドから「小さなメソッドを順次呼び出すだけ」のシンプルなメソッドとなります。
# 「長くて複雑なメソッドをいくつかの小さなメソッドに分割」= ExtractMethodやね。
# あるメソッドにExtractMethodを繰り返し適用していくとComposedなメソッドになると。
分割前の処理が使用していたデータは、分割後のメソッドのパラメータとして渡してやる。
# 俺はインスタンス変数もよく使います
分割後のメソッドは、そのメソッド単独で仕事を終えられる必要がありますし、何を行っているかが分かるような名前をつける必要があります。
あと、ループ処理をメソッド分割するのは良い考え。
以下省略