Creative design patterns include Simple Factory, Factory Method, Abstract Factory, Builder, Prototype, and Singleton.
#In software engineering, creational pattern is a design pattern that deals with object creation, trying to create objects in an appropriate way according to the actual situation. Basic object creation methods may cause design problems or increase design complexity. Creational patterns solve problems by controlling the creation of objects in some way.
The creational model consists of two dominant ideas. One is to encapsulate the concrete classes used by the system, and the other is to hide the way instances of these concrete classes are created and combined.
Creative patterns are divided into object creation patterns and class creation patterns. The object creation pattern deals with the creation of objects, and the class creation pattern deals with the creation of classes. In detail, the object creation pattern defers part of the object creation to another object, while the class creation pattern defers the creation of its object to a subclass.
Creative design pattern
Abstract factory pattern provides an interface for creating related or dependent objects without specifying the specific class of the object.
Factory method pattern allows the instantiation of a class to be postponed to a subclass.
The generator pattern separates the creation of a complex object from its representation, so that the same creation process can create different representations.
The object pool mode avoids the costly process of acquiring and releasing resources when creating and destroying objects by recycling objects that are no longer used.
Prototype mode, use a prototype instance to specify the type of object to be created, and create new objects by copying the prototype.
Singleton mode ensures that a class has only one instance and provides global access to this instance.
Recommended tutorial: "PHP"
The above is the detailed content of What are the creative design patterns?. For more information, please follow other related articles on the PHP Chinese website!