- Chapter 1: .NET Framework
Chapter Goal: If you are new with or have some experience with .NET Framework you must starts here. This chapter is an introduction for the content of the book and describes the architectural and the engineering resources that you'll should expect to be available in any implementation of the .NET Framework, in any platform of hardware / operating system or executive
- Chapter 2: Base Class Library
Chapter goal: The BCL - Base Class Library (core set) is also known as "synonymous" for .NET FCL - Framework Class Library (complete set). But it is important to understand that this is not correct. The .NET FCL - Framework Class Library (complete set) is the name that is used in documentation when it describes what you known as .NET Framework Class Library. As the name implies, the purpose of BCL - Base Class Library (core set) is to provide the FOUNDATIONAL LIBRARY with managed types (reference types and value types) that give access for what is known as system functionalities. The system functionalities means not only the platform itself, but operating system base functionalities and even functionalities of some specialized resources of the operating system. This FOUNDATIONAL LIBRARY is organized in a few assemblies to facilitate the use and distribution. For example, the mscorlib (in mscorlib.dll), System (System.dll / .netstandard.dll / System.Runtime.dll), and System.Xml (System.Xml.dll) assemblies concentrates the most fundamental types and functionalities, data structures, and functionalities which are used by any kind of application. This assemblies includes API - Application Programming Interfaces that are CLS-compliant and API - Application Programming Interfaces that are not CLS-compliant.
- Chapter 3: Virtual Execution System (VES) - Equals and Clone operations
Chapter goal: As you learned in Chapter 1 - .NET Framework and Chapter 2 - BCL - Base Class Library, the fundamental types array and string are part of any kind of application targeting an implementation of .NET. But some behaviors available within these types come from the VES - Virtual Execution System and expressed through methods and functionalities that are implicitly available. For example, ref classes / ref structs, and value classes / value structs derives from the root reference type System:: Object, implicitly or explicitly. So, ref classes / ref structs, and value classes / value structs inherit some of the fundamental behaviors designed and described by CTS - Common Type System, which are implemented and enforced by VES - Virtual Execution System. Just to remember, by definition, ref classes / ref structs are compared by reference, which means that for being considered equal, two or more references must point for the same instance.
- Chapter 4: Programming with Common Intermediate Language (CIL)
Chapter goal: In this chapter you will learn more details about the CTS - Common Type System and VES - Virtual Execution System, that is, more about how the execution environment deals with the types and structural elements of the platform. We use code written directly in CIL - Common Intermediate Language to explain more details about the use of the types and to better understands some internal aspects of the execution environment.
- Chapter 5: Assembly Manifest and Versioning
Chapter goal: In this chapter we will learn about the metadata system and the importance to the CTS - Common Type System and VES -
About the Author: Roger Villela is a software engineer with 30 years of experience in the industry. He now works as a professional technical educator in his own firm that specializes in the inner workings of the following Microsoft development platforms: the Windows operating system, Universal Windows Platform (UWP), and the .NET Framework. He has worked with various tech companies, and now base his work on Microsoft Visual Studio 2017 with Microsoft Visual C++/CLI projection, Component Extensions (C++/CX) projection, C++/WinRT, Intel Parallel Studio XE with Intel C++ (Microsoft Windows), and Assembly (Intel x86/Intel x64).