アセンブリ (プログラミング)

出典: フリー百科事典『ウィキペディア(Wikipedia)』

これはこのページの過去の版です。Sygh (会話 | 投稿記録) による 2016年5月28日 (土) 14:55個人設定で未設定ならUTC)時点の版 (出典を追加。)であり、現在の版とは大きく異なる場合があります。

アセンブリとは、型と他の資源から構成されるランタイムユニットである。アセンブリ内にある全ての型は同じバージョン番号を持つ。

しばしば、1つのアセンブリは1つだけの名前空間を持ち、1つのプログラムで使用される。しかしそのアセンブリはいくつかの名前空間を超えて広がる。また、1つの名前空間がいくつかのアセンブリを超えて拡大することもある。巨大な設計において、アセンブリは「マニフェスト」(つまり内容のテーブル)によって共に収容された複数のファイルから構成されてもよい。

C#VB.NETなどの.NET言語において、アセンブリは使用される最小の配置ユニットであり、.NET内のコンポーネントである。たとえばMicrosoft Windows環境の場合、具体的にはDLLEXEとなる。転じて、.NETコンポーネントではないネイティブのDLL/EXEも、「アセンブリ」と呼ばれることがある[1]Javaにおいて、それはJARファイルである[2]

アセンブリの作成

C#においては、コンパイルごとに、「アセンブリ」か「モジュール」[3]のいずれかが作成される。「アセンブリ リンカー」 (al) [4]を用いて他のモジュールを加えることができる。

Javaの特徴は、各クラスごとに*.classファイルを作成することであり、この点でC#とは異なる。対象となるアセンブリに追加されるYを伴う新規のA.exeを作成するcsc /addmodule:Y.netmodule A.csのように、作成はコンパイラのスイッチで活性化させることが可能である[5]

脚注

  1. ^ C/C++ 分離アプリケーションおよび side-by-side アセンブリのビルド
  2. ^ Mossenbock, Hanspeter (2002年3月25日). “Advanced C#: Variable Number of Parameters”. http://ssw.jku.at/Teaching/Lectures/CSharp/Tutorial/:+ Institut fur Systemsoftware, Johannes Kepler Universitat Linz, Fachbereich Informatik. p. 37. 2011年8月5日閲覧。
  3. ^ 連載! とことん C#: 第 18 回 モジュール (.netmodule) の意義 言語: C#
  4. ^ Al.exe (アセンブリ リンカー)
  5. ^ Mossenbock, Hanspeter (2002年3月25日). “Advanced C#: Variable Number of Parameters”. http://ssw.jku.at/Teaching/Lectures/CSharp/Tutorial/:+ Institut fur Systemsoftware, Johannes Kepler Universitat Linz, Fachbereich Informatik. pp. 38〜40. 2011年8月5日閲覧。

関連項目