web-dev-qa-db-ja.com

ソフトウェアエンジニアリングのコンテキストでのモジュールとは何ですか?

ソフトウェアエンジニアリングでは、通常、Wordモジュールを記述する場合、通常はブラケット(コンポーネント、パッケージ、クラスなど)が後に続きます。これは、モジュールがクラス、パッケージ、またはコンポーネントである可能性があることを意味します。モジュールは何かを行うコードの一部であることを知っています。私のシステムでWordモジュール、クラス、パッケージ、または関数をいつ使用するか混乱していますか?

4
John adams

モジュールは、実装の抽象的な単位にすることができます。オブジェクト、おそらく相互作用するオブジェクトのコレクションよりも大きい。モジュールは、内部コンポーネントの結合よりも互いに疎結合であることを意図しており、独立性の概念を呼び起こします。モジュール性。


モジュールという用語は、多くのプログラミング言語で特定の意味でオーバーロードされています。


プログラミングでは、抽象化とその使用を交互に行います。抽象化ラダーには以下が含まれます。

  • 変数—コードの行を抽象化
  • 関数—コード行を抽象化し、署名の背後に隠します
  • クラス—関連する機能と状態のグループ
  • インターフェース—何ができるかによって関連するクラス
  • モジュールと名前空間—どちらもクラスをグループ化して並べ替えの単位にまとめます
6
Erik Eidt

モジュールには、さまざまな言語やコンテキストでさまざまな特定の意味があります。

ソースコードに一般的に適用される場合、これは通常、関連するmethodsをまとめる方法です(メソッドは、特定の言語がルーチン、関数、またはプロシージャを呼び出すための汎用Wordです)。つまり、モジュールはapplicationまたはlibrary全体を分割したものであり、1つ以上のメソッドが含まれています。

コンパイルされたコードまたは実行可能ファイルに一般的に適用すると、Wordモジュールの使用頻度は少なくなり、一貫した使用ができますが、実質的にlibraryまたはcomponentと同じです。

クラスはオブジェクト指向の概念であり、objectのレイアウトを定義し、関連するメソッドのセットを定義およびグループ化します。

パッケージは、ほとんどの言語で一般的な単語ではありません。 DotnetとMicrosoft環境では、一般にAssemblyproject、およびsolutionなどのグループ化要素もあります。

すべての分類法が互換性がある、または同じ名前で同じ要素がすべて含まれているわけではないため、ほとんどの場合、Wordの意味を正確に理解するには、特定の言語またはコンテキストについて話す必要があります。

2
Steve

一般的に、モジュールは何か大きなものの別個の部分です。それ以上でもそれ以下でもありません。ソフトウェアでは、多くの場合、パッケージ化されたファイルになります。

言葉はラテン語、つまりメジャーを意味します。ソフトウェアパッケージとツールの作成者は、製品のどの部分でもWordの使用を指示する場合があることに注意してください。私たちの業界では便利な言葉です。製品によって意味が異なる場合があります。それは部分よりもはるかに洗練された価値があります。

つまり、あなたは何のためにお金を払うのですか?あなたがすでに持っているものに加えてもう少しコード、または追加のモジュール?

1
Martin Maat

一般に、モジュールは独立してロードできるものです。

実行可能ファイルがモジュールであるというよりも、動的にロードされたライブラリがモジュールであるということは有効です。 ただし、あまり伝達的ではありません。

一部のプラットフォームでは、クラスまたは関数をモジュールにすることができます。さらに、一部のプラットフォームにはパッケージなどのモジュールの特別な名前があり、システムの一部であるモジュールはコンポーネントです。

も参照してください モジュール設計

0
Theraot