... Companion. Finally, we recently published Java Design Patterns: a Tutorial, and Visual Basic Design Patterns, which illustrate all of these patterns in those languages. Defining Design Patterns ... you always Program to an interface and not to an implementation. Putting this more succinctly, you should define the top of any class hierarchy with an abstract class or an interface, which implements ... an introductory description, an introduction to C#, and descriptions of patterns, grouped as creational, structural, and behavioral. Copyright © , 2002 by James W Cooper Introduction to Design...