In Chapter 24, you learned how to structure applications into manageable pieces from a language point of view, using the concept of namespaces. Separate from this, the runtime plays a role, too, to realize goals of loading components and providing isolation when needed.

On the boundary between runtime, languages, and tools, we find the unit of deployment for code and metadata on the .NET platform. Referred to as assemblies, they act as the container for types, all metadata describing those types and their members, as well as embedded resources. Visual Studio provides various project templates to create those assemblies for different goals, such as a console or GUI application (an .exe file) or a class library (a .dll file). Assemblies ...

Get C# 5.0 Unleashed now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.