コードの再利用
再利用可能なソフトウェアやソフトウェアの知識は再利用可能な資産である。資産には、設計、要求仕様、テストケース、アーキテクチャなども含まれる。
おそらく最もよく知られている再利用可能資産はコードである。コードの再利用とは、ある時点で書かれたプログラムの一部または全部を後の別のプログラムを書くときに利用することである。コードの再利用は、冗長な作業に費やす時間とエネルギーを節約する典型的技法である。
ライブラリは抽象化のよい例である。プログラマはプログラムの一部を再利用可能とするために内部に抽象化ポイントを作成したり、自前で使うためにカスタムライブラリを作ったりする。ソフトウェアをより再利用しやすくする特性をモジュール性、低結合度、高凝集度、情報隠蔽、関心の分離などと呼ぶ。
既存をコードを使って新たなコードを書く場合、なんらかのインタフェースあるいはアクセス手段が定義されていなければならない。これにはサブルーチンコール、オブジェクト、クラス、プロトタイプなどが含まれるのが一般的である。企業では、これらは定式化され標準化されているのが一般的である。
コンポーネントを後々再利用可能なように戦略的に設計していく。
日和見的再利用はさらに以下のように分けられる。