回答編集履歴
1
最後に同名以外の手法を紹介する意図を示した
answer
CHANGED
@@ -1,6 +1,9 @@
|
|
1
1
|
他回答者の方がもう色々な方法を提示されたので、
|
2
2
|
私は選択肢の**使い分け**の目安を示したいと思います。
|
3
3
|
|
4
|
+
|
5
|
+
---
|
6
|
+
|
4
7
|
ご質問のサンプルコードのように、
|
5
8
|
増えていく引数の**型**が同じで、処理も同じ、単調な変化の場合は、
|
6
9
|
配列を引数に取ってループの回数を変えるのが一番シンプルです。
|
@@ -18,7 +21,12 @@
|
|
18
21
|
別オブジェクトに分けた方が整理しやすいのです。
|
19
22
|
とくにIF文がネストするような複雑な場合に威力を発揮します。
|
20
23
|
|
24
|
+
|
25
|
+
---
|
26
|
+
|
21
27
|
なお、方向性は違いますが、引数のパターンが単調な場合、
|
22
28
|
とくに内部のIF文を分けるためのフラグとして引数を使っている場合、
|
23
29
|
高階関数と部分適用で分ける関数型的な手法も有力です。
|
30
|
+
|
24
|
-
この場合、名前を増やす代わりに、引数を減らして整理します。
|
31
|
+
この場合、名前を増やす代わりに、引数を減らして整理します。
|
32
|
+
同名はひとつの手段で、目的はコードの整理だと思うので、選択肢のひとつです。
|