Free mag vol1 | Page 561

C H A P T E R 14 Building and Configuring Class Libraries During the first four sections of this text, you have created a number of “stand-alone” executable applications, in which all of the programming logic was packaged within a single executable file (*.exe). These executable assemblies were making use of little more than the primary .NET class library, mscorlib.dll. While some simple .NET programs may be constructed using nothing more than the .NET base class libraries, chances are it will be commonplace for you (or your teammates) to isolate reusable programming logic into custom class libraries (*.dll files) that can be shared among applications. In this chapter, you will learn about various ways to package your types into custom libraries of code. To begin, you’ll learn the details of partitioning types into .NET namespaces. After this, you will examine the class library project templates of Visual Studio and learn the distinction between private and shared assemblies. Next, you’ll explore exactly how the .NET runtime resolves the location of an assembly, and you’ll come to understand the global assembly cache (GAC), XML