In
computer programming
Computer programming is the process of performing a particular computation (or more generally, accomplishing a specific computing result), usually by designing and building an executable computer program. Programming involves tasks such as anal ...
an assembly is a
runtime unit consisting of types and other resources. All types in an assembly have the same
version
Version may refer to:
Computing
* Software version, a set of numbers that identify a unique evolution of a computer program
* VERSION (CONFIG.SYS directive), a configuration directive in FreeDOS
Music
* Cover version
* Dub version
* Remix
* ''Ve ...
number.
Often, one assembly has only one namespace and is used by one program. But it can span over several
namespaces
In computing, a namespace is a set of signs (''names'') that are used to identify and refer to objects of various kinds. A namespace ensures that all of a given set of objects have unique names so that they can be easily identified.
Namespaces ...
. Also, one namespace can spread over several assemblies. In large designs, an assembly may consist of multiple files that are held together by a ''manifest'' (i.e. a table of contents).
In
C#, an assembly is the smallest
deployment
Deployment may refer to:
Engineering and software Concepts
* Blue-green deployment, a method of installing changes to a web, app, or database server by swapping alternating production and staging servers
* Continuous deployment, a software e ...
unit used, and is a component in
.NET. In
Java
Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's mos ...
, it is a
JAR file.
Creation of an assembly
Every compilation creates either an ''assembly'' or a ''module'' in C#. It is possible to add other modules with the ''assembly linker'' (al). A speciality of Java is to create a
*.class
file for each class, which is not the case in C#. The creation can be activated by compiler switches, like
csc /addmodule:Y.netmodule A.cs
that yields a new
A.exe
with Y added to this assembly.
[
]
References
{{Reflist, 2
Programming constructs