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 were removed because their presence would be irrelevant and confusing. Despite these significant changes, the code retains the complexity of a cutdown and transformed version of a larger work. Not all of its sections are pretty or easy to browse. For some, these imperfections will make the code appealing, since large, real-world codebases rarely see the light of day. If you are not one of these masochists, you may be occasionally frustrated as you follow our guided trip through the code. We apologize in advance, but exhort you to make the journey with us despite these minor inconveniences!

Get Shared Source CLI Essentials now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.