回答
モジュール
- 特定の機能を実装するために、コードとデータをカプセル化します。
- クライアントがその機能に均一にアクセスできるようにするインターフェースがあります。
- そのインターフェースを期待する別のモジュールに簡単にプラグインできます。
- 通常はパッケージ化されています。簡単に展開できるように、単一のユニットで。
たとえば、dapper.netはデータベースアクセスをカプセル化します。機能にアクセスするためのAPIがあります。これは、構築するソースツリーにプラグインできる単一のファイルです。
モジュールの概念は、ソフトウェアをプログラムを分解することにより、モジュールと呼ばれる個別の交換可能なコンポーネントで構成する必要があることを提唱するモジュラープログラミングパラダイムに由来します。関数をモジュールに分割します。各モジュールは1つの関数を実行し、これを実行するために必要なすべてのものを含みます。
コメント
回答
モジュールは過負荷になっている可能性がありますウィキペディアでは、ソフトウェアとの関連での使用について説明するときに、モジュラープログラミングという用語で説明しています。彼らは、トップダウン設計アプローチに基づいた構造化プログラミングの観点からそれを議論します。低い結合と高い凝集力の使用に関連するモジュール性の主な特徴。
私の使用法は、CやC ++のような言語では、モジュールはソースファイル(.cまたは.cpp)および通常は1つの関連ヘッダーファイル(.h)から個別にコンパイルされたユニットの定義に関連しているというものです。他の言語は説明としてモジュールを使用し、言語Modula-2は、その名前とアプローチの中心にモジュールを中心に構造化を配置します。
歴史的に、モジュールには、 D.Lで説明されているように他のいくつかの影響があります。パーナスの論文「ソフトウェアをモジュールに分解する際に使用する基準について」。彼は主に、機能分解をデータ指向分解に置き換えることの利点について議論することに関心を持っています。これは、オブジェクト指向分解である現在の最先端技術に向けた大きな一歩でした。
オブジェクト指向言語はクラスを中心に編成されているため、モジュールという用語はそのコンテキストではそれほど重要ではなく、精度も低くなります。
回答
モジュールの正式な定義はありません。プロジェクトのコンテキストでモジュールが何であるか(またはそうでないか)は、プロジェクトの性質と設計に大きく依存します。
一般的に、モジュールは、特定の緊密に結合された機能を提供するスタンドアロンのコードであり、モジュールはコードの論理境界を定義および適用します。