回答編集履歴

3

誤字修正

2019/12/08 11:42

投稿

nico25
nico25

スコア830

test CHANGED
File without changes

2

誤字修正

2019/12/08 11:42

投稿

nico25
nico25

スコア830

test CHANGED
@@ -12,7 +12,7 @@
12
12
 
13
13
 
14
14
 
15
- 継承の欠点は、本来使わないはずの機能も使える様になってしまうことです。使わない機能が使える様になって何が問題なのでしょうか?継承は「KISS の原則」と相反するものなのかなと思っています。「KISS の原則」も原則というよりも、おそらく **経験則** かなと感じますが。
15
+ 継承の欠点は、本来使わないはずの機能も使える様になってしまうことです。使わない機能が使える様になって何が問題なのでしょうか?継承は「KISS の原則」と相反するものなのかなと思っています。
16
16
 
17
17
 
18
18
 
@@ -20,15 +20,13 @@
20
20
 
21
21
 
22
22
 
23
+ 「KISS の原則」も原則というよりも、おそらく **経験則** かなと感じますが。そのため「じゃあ、なんで設計の単純性(簡潔性)は成功への鍵なのか?」、あるいは「KISS の原則は正しいのか?」と聞かれると答えに窮してしまうのですが...
24
+
25
+
26
+
23
27
 
24
28
 
25
29
  ### 依存性逆転の原則
26
-
27
-
28
-
29
- じゃあ「なんで設計の単純性(簡潔性)は成功への鍵なのか?」、あるいは「KISS の原則は正しいのか?」と聞かれると答えに窮してしまうのですが...
30
-
31
-
32
30
 
33
31
  「継承より合成」は、言い換えれば「使うメソッドだけ渡して、使わないメソッドは使わせない」とも言えるかなと思います。これと同じことが[「依存性逆転の原則」](https://ja.wikipedia.org/wiki/%E4%BE%9D%E5%AD%98%E6%80%A7%E9%80%86%E8%BB%A2%E3%81%AE%E5%8E%9F%E5%89%87) に見られます。
34
32
 

1

誤字修正

2019/12/08 11:42

投稿

nico25
nico25

スコア830

test CHANGED
@@ -83,3 +83,13 @@
83
83
 
84
84
 
85
85
  それでも今回のケースでは、継承の方がわかりやすいんじゃないのかなと思ったりもしています。
86
+
87
+
88
+
89
+ ### まとめ
90
+
91
+ 「継承より合成」あるいは「依存性逆転の原則」にしても、過度に単純化している可能性はあるのですが「必要なものだけ渡そう」ということなのかなと思います。
92
+
93
+
94
+
95
+ その背景としては「KISS の原則」がある様に感じます。原則というよりも経験則で、どっちか迷ったら「単純な方を」あるいは「必要なものだけ渡す方を」選択しておいた方が、無難なのかなと **思っています**。