Assumptions This Book Makes
Because this book uses industrial source code as its demonstration material, there are some fairly heavyweight assumptions made about our readers’ familiarity with programming languages and systems.
We assume that you have some familiarity with C# or Java, as well as a good understanding of C++, which is what comprises most of the sample code in this book. The C++ used in the Rotor source is very straightforward and does not exercise the “dangerous” features of the language. A few examples use CIL or snippets of assembler. To understand these, a cursory knowledge of any assembly language should help. Because so many of the operating system interactions in Rotor are made via its Win32-based abstraction layer, you should have a basic familiarity with the Win32 API; although, again, this can be quite cursory.
References will be made to particular sections of the Rotor code without reproducing that code directly in the book’s text. It is expected that readers will have downloaded the Rotor code (either from the Internet or from the CD), and will have walked through the code from the friendly confines of their favorite text editor, debugger, or development environment.
Rotor’s code was originally drawn from the same codebase that is used to build the commercial .NET Framework. Several of its major subsystems were swapped out, and extensive changes were made to make the code approachable and more portable. In addition, numerous parts of the commercial product ...