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

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

しばしば、1つのアセンブリは1つだけの名前空間を持ち、1つのプログラムで使用される。しかし、1つのアセンブリがいくつかの名前空間に及ぶこともある。また、1つの名前空間がいくつかのアセンブリに及ぶこともある。巨大な設計において、アセンブリは「マニフェスト」（内容を記した一覧表）によってまとめられた複数のファイルから構成されていてもよい。

C#やVB.NETなどの.NET言語において、アセンブリは使用される最小の配置単位であり、.NETにおけるコンポーネントである。たとえばMicrosoft Windows環境の場合、具体的にはDLLやEXEとなる。転じて、.NETコンポーネントではないネイティブのDLL/EXEも、「アセンブリ」と呼ばれることがあるBuilding C/C++ Isolated Applications and Side-by-side Assemblies | Microsoft Docs。Javaにおいて、アセンブリはJARファイルである。

 アセンブリの作成 
C#においては、コンパイルごとに、「アセンブリ」か「モジュール」連載! とことん C#: 第 18 回 モジュール (.netmodule) の意義 言語: C#のいずれかが作成される。「アセンブリ リンカー」 (al) Al.exe (アセンブリ リンカー)を用いて他のモジュールを加えることができる。

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

 脚注 

 関連項目 
 アセンブリ (共通言語基盤): .NET Frameworkにおけるアセンブリについて
 分離アプリケーションとSide-by-Sideアセンブリ

Category:プログラミング言語の構文