In the .NET Framework, class libraries provide developers with reusable bits of code. Developers can use the libraries that are part of the .NET Framework itself or roll their own, so long as they understand that others will be using those libraries and, therefore, will have to know what it all means.
Framework Design Guidelines teaches developers best practices for designing .NET Framework 2.0 and 3.0. libraries This book focuses on the design issues that directly affect the programmability of a framework, specifically its publicly accessible APIs.
Chapter 4, Type Design Guidelines, presents guidelines that describe when and how to design classes, structs and interfaces within .NET Framework base class libraries. In this chapter, Abrams and Cwalina divide types into three groups -- reference types, value types and interfaces -- and discuss the do's and don'ts of type design. Be warned: the authors do not always agree on what works best.
Excerpted from the Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries (ISBN: 978-0-321-24675-2) by Brad Abrams and Krzysztof Cwalina.
Copyright © 2005. Published by Addison-Wesley Professional as part of the Microsoft .NET Development Series and available at your favorite book seller. Reprinted with permission.