公開されている
REFACTORING OBJECT-ORIENTED FRAMEWORKS
のキモ部分を読んで勉強してみたいと思います。
始めに
問題
設計は困難な作業である。特に再利用可能なソフトウェアの設計は困難である。
再利用可能なソフトウェアは、普通、多くのデザインのイテレーションの結果である。
デザインのイテレーションは、稼働後のソフトウェアにも発生する。
ソフトウェアが変更しやすければ、デザインのイテレーションも容易になり、ソフトウェアの再利用もより進む。
しかし、これに対しての研究はなく、オブジェクト指向ソフトウェアは、変更しやすいということいが信じられている。
サブクラスの追加や既存クラスへの新しいオペレーションの追加では、オリジナルのソフトウェアへの変更は発生しない。
しかし、オブジェクト指向のソフトウェアの変更は、一般的に考えられるよりも、難しい。
オブジェクト指向のシステムの変更では、既存のクラスの中の変更や、クラス間の関係の変更も発生する。
これらの変更では、変数やメソッドのクラス間での移動、クラスの分割などが発生する。
構造の変化が発生すれば、プログラムの他の部分へも影響が及ぶことがある。
影響を人手で、追跡し変更することは、時間を要し、また難しいく、エラーを生みやすい。
再利用性というオブジェクト指向のメリットを得るためには、構造の変更に対する自動化のサポートが必要となる。
 
0 件のコメント:
コメントを投稿