回答編集履歴
1
追記
answer
CHANGED
@@ -2,4 +2,6 @@
|
|
2
2
|
それはさておき、ポリモーフィズム自体が特異点を除去し、NUllObjectパターンなどの各種デザインパターンが特異点を除去し、オブジェクト指向以前からある特異点除去方法としてはテーブル化 (連想配列を使うといいよ、と他の回答にあるようなもの) や番兵なんかがあるわけです。
|
3
3
|
特異点がなくなると見通しがよくなり、潜在的なバグも減りますが、特異時の処理が隠れてしまい、一般的に抽象度が高まるので、慣れていないと逆に理解しにくくなってしまう懸念があります。
|
4
4
|
|
5
|
-
if や switch が少ないから読みやすい、というのは必ずしも真ではありませんが、読みづらい≈潜在的なバグの温床になっている≈メンテする気になれない、ようなコードは無駄に if や switch が多い、というのは(経験的に)真です。
|
5
|
+
if や switch が少ないから読みやすい、というのは必ずしも真ではありませんが、読みづらい≈潜在的なバグの温床になっている≈メンテする気になれない、ようなコードは無駄に if や switch が多い、というのは(経験的に)真です。
|
6
|
+
|
7
|
+
あ、あと、たくさんコードを「読んで」、それなりにコードを書いていると、これは駄目だろうという if 文と、これは問題ないだろうという if 文の違いが感覚的にわかるようになってきます。
|