宿題の答え合わせ


オブジェクト指向汚染(治療中)の宿題の答え合わせです。


実は答え書かない予定だったのですが、
id:h-yanoさんにせっかく答えて頂いたので、回答せねばということで。


ちなみに多分答えはいろいろあると思いますので、
私なりの答えを。


ポイントは2つ

  1. オブジェクト指向を適用することで設計が複雑になる場合がある。
  2. ソースを修正するものが必ずしもスキルがあるとは限らない。


修正が軽微ですむ設計にしても、設計自体が複雑になってきてしまうと
パッと身で全体像を理解しづらくなってしまう場合があります。


その場合に、スキルのある人が修正するのであれば設計をすぐ理解し
適切な修正が可能なのですが、もしスキルが無い人が修正したら
どうなるでしょう。


設計の理解に時間が掛かり、またどのクラスにどの処理を書くのが適切か
理解できずに設計者の意図しないコーディングが行われるかもしれません。


スキルを持っていない人が修正する場合が多い箇所に
あまり複雑な設計をもちいると変更優位なシステムにはならない
というのが私の回答です。


つまりフレームワークのようなスキルがある人が修正する場合が多い箇所
には積極的にオブジェクト指向を適用し、
スキルが無い人が修正するようなアプリケーション部分には
多少コピーを行ったとしてもできるだけ
シンプルな設計を用いる必要があると思います。