|
汎用モジュールとアプリ依存モジュール
前回はモジュール分割の基本的な考え方を説明しました。今回はもう少しこの考え方を推し進めていきましょう。
ある程度大きなプログラムを作るときは、プログラムをモジュールに分割する必要がありますが、このモジュール群は、大別すると2つのタイプに分けることができます。それは汎用的に使えるモジュールと、そのアプリケーションに特有のモジュールです。
汎用的に使えるモジュールは、他のアプリケーションに持っていっても、加工なしにそのまま使えるモジュールです。アプリケーションに特有のモジュールは、そのアプリケーションに特有のデータ構造や、プログラムロジックが含まれているモジュールです。
モジュールを設計するときには、できるだけ汎用的なモジュールを多く作るようにします。それはもちろん、再利用性を考えてのことです。
気をつけなければいけないのは、紙一重の差でモジュールが汎用モジュールにも、アプリ依存モジュールにもなるということです。汎用的に作ったつもりでも、そのアプリでしか関係しないパラメータが1つでも入ってしまったら、それはアプリ依存のモジュールになってしまいます。
逆に言えば、少し気をつけてモジュールの設計をしていけば、汎用的に使える部分はたくさん抽出できます。
モジュールを設計するときは、そのモジュールが仕様を満たすかということだけでなく、その仕様が今回だけのものなのか、それとも他のプログラムでも全く同じように使えるものなのかという点を考慮しないといけないということですね。
|