Chapter 4. Facade
A great advantage of OO programming is that it helps keep applications from becoming monolithic programs with hopelessly interwoven pieces. An “application” in an OO system is, ideally, a minimal class that knits together the behaviors from reusable toolkits of other classes. A toolkit or subsystem developer often creates packages of well-designed classes without providing any applications that tie the classes together. The packages in the .NET FCL are generally like this; they are toolkits from which you can weave an endless variety of domain-specific applications.
The reusability of toolkits comes with a problem: The diverse applicability of classes in an OO subsystem may offer an oppressive variety of options. A developer who ...
Get Design Patterns in C# 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.