Name Description In Design Patterns In Code Complete Other
Abstract factory Provide an interface for creating families of related or dependent objects without specifying their concrete classes. Yes Yes N/A
Builder Separate the construction of a complex object from its representation, allowing the same construction process to create various representations. Yes No N/A
Dependency Injection A class accepts the objects it requires from an injector instead of creating the objects directly. No No N/A
Factory method Define an interface for creating a single object, but let subclasses decide which class to instantiate. Factory Method lets a class defer instantiation to subclasses. Yes Yes N/A
Lazy initialization connection pool Tactic of delaying the creation of an object, the calculation of a value, or some other expensive process until the first time it is needed. This pattern appears in the GoF catalog as "virtual proxy", an implementation strategy for the Proxy pattern. No No PoEAA
Multiton Ensure a class has only named instances, and provide a global point of access to them. No No N/A
Object pool Avoid expensive acquisition and release of resources by recycling objects that are no longer in use. Can be considered a generalisation of connection pool and thread pool patterns. No No N/A
Prototype Specify the kinds of objects to create using a prototypical instance, and create new objects from the 'skeleton' of an existing object, thus boosting performance and keeping memory footprints to a minimum. Yes No N/A
Resource acquisition is initialization (RAII) Ensure that resources are properly released by tying them to the lifespan of suitable objects. No No N/A
Singleton Ensure a class has only one instance, and provide a global point of access to it. Yes Yes N/A
First name Last name Age Current work Annual salary Color of the underwear Name of the first pet Shoe size Know CSS transition Know Js Closure
The best Bob Marley 22 Singer 200000 blue Gil 40
The fastest Joe Vanilla 44 Dev 100000 white joj 39
The least good Gary Silva 32 QA 100000 brown gail 42