summaries

Design Patterns: Elements of Reusable Object-Oriented Software

mendi926QuotesQuotes: 10
English
English
AI Generated
Program to an interface, not an implementation.Erich Gamma
Favor object composition over class inheritance.Erich Gamma
Designing object-oriented software is hard, and designing reusable object-oriented software is even harder.Erich Gamma
The key to maximizing reusability lies in realizing that clients that use a class can be separated from the classes' implementation into two parts - a class interface and a class implementation.Erich Gamma
Inheritance is a form of coupling in which a subclass knows about the detailed implementation of its superclass.Erich Gamma
Achieving the right level of abstraction is critical to making an object-oriented design flexible and reusable.Erich Gamma
Composing objects from other objects is an approach often referred to as design for composition. With it, you can often accomplish the same effects as inheritance and do so more flexibly.Erich Gamma
In the best designs, objects are completely unaware of the context in which they're used.Erich Gamma
A design pattern names, abstracts, and identifies the key aspects of a common design structure that make it useful for creating a reusable object-oriented design.Erich Gamma
Design patterns can even improve the documentation and maintenance of existing systems by furnishing an explicit specification of class and object interactions and their underlying intent.Erich Gamma