ConcreteFactory

E679866

ConcreteFactory is a design pattern participant that implements the Abstract Factory interface to create specific families of related product objects.

All labels observed (4)

Label Occurrences
ConcreteFactory canonical 1
ConcreteFactoryA 1
ConcreteFactoryB 1

How this entity was disambiguated

Statements (34)

Predicate Object
instanceOf Creational design pattern element ⓘ
Design pattern participant ⓘ
belongsToCategory Creational patterns ⓘ
benefit Isolates concrete classes from clients ⓘ
Promotes consistency among products in the same family ⓘ
collaboratesWith AbstractFactory ⓘ
linked to: Abstract Factory

ConcreteProduct ⓘ
Product ⓘ
conformsTo AbstractFactory interface contract ⓘ
creates ConcreteProduct objects ⓘ
Families of related product objects ⓘ
Objects without specifying their concrete classes to clients ⓘ
definedIn Abstract Factory pattern structure diagrams ⓘ
defines Methods for creating concrete products ⓘ
describedIn Design Patterns: Elements of Reusable Object-Oriented Software ⓘ
encapsulates Creation of related product families ⓘ
ensures Products created are compatible within the same family ⓘ
hasResponsibility Instantiate concrete products that conform to an abstract product interface ⓘ
hides Concrete product classes from client code ⓘ
implements AbstractFactory interface ⓘ
linked to: Abstract Factory
implementsMethod Factory methods for each abstract product type ⓘ
createProductA ⓘ
createProductB ⓘ
languageAgnostic True ⓘ
oftenNamed ConcreteFactoryA ⓘ
linked to: ConcreteFactory

ConcreteFactoryB ⓘ
linked to: ConcreteFactory

ConcreteFactoryX ⓘ
linked to: ConcreteFactory
participatesIn Abstract Factory pattern ⓘ
linked to: Abstract Factory
roleInPattern Concrete factory ⓘ
supports Variation of product families without changing client code ⓘ
typicalContext Cross-platform libraries with platform-specific product implementations ⓘ
GUI toolkits with multiple look-and-feel families ⓘ
usedFor Switching entire product families at runtime by changing factory instance ⓘ
usedIn Object-oriented design ⓘ
linked to: SOLID principles

How these facts were elicited

Referenced by (4)

Full triples — surface form annotated when it differs from this entity's canonical label.

Abstract Factory → typicalParticipants → ConcreteFactory ⓘ
ConcreteFactory → oftenNamed → ConcreteFactoryA ⓘ
linked to: ConcreteFactory
ConcreteFactory → oftenNamed → ConcreteFactoryB ⓘ
linked to: ConcreteFactory
ConcreteFactory → oftenNamed → ConcreteFactoryX ⓘ
linked to: ConcreteFactory