# Creational Patterns

> Every term in this category is listed as one record, with its kind, its definition and its aliases, the principles whose relations name it, the principle or…

Page: Ontology · Lexicon
Canonical: https://banes-lab.com/ontology/lexicon#lexicon-category-creational-patterns

Listed in [Ontology · Lexicon](https://banes-lab.com/api/pages/ontology/lexicon.md), after [Correctness / Determinism / Verification](https://banes-lab.com/ontology/lexicon/lexicon-category-correctness-determinism-verification.md) and before [Domain Architecture](https://banes-lab.com/ontology/lexicon/lexicon-category-domain-architecture.md).

Every term in this category is listed as one record, with its kind, its definition and its aliases, the principles whose relations name it, the principle or contract that carries the same name where one exists, and the layer its category belongs to. A tag category also gives each term an example, which is the file the tag places or the rename from a refused word onto a covering tag.

### Cloneable Template Object

- Kind: [constraint](https://banes-lab.com/records/kind/constraint.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
The requirement that a prototype object support being copied to produce new instances.

Referenced by
[Prototype Pattern](https://banes-lab.com/records/architecture/prototype-pattern.md)

How it is checked

Checked by
[Prototype Pattern](https://banes-lab.com/records/architecture/prototype-pattern.md)

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Complex Construction

- Kind: [quality-attribute](https://banes-lab.com/records/kind/quality-attribute.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
The degree of complexity in assembling an object that motivates a step-by-step builder.

Referenced by
[Builder Pattern](https://banes-lab.com/records/architecture/builder-pattern.md)

How it is checked

Checked by
[Builder Pattern](https://banes-lab.com/records/architecture/builder-pattern.md)

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Complex Factory Hierarchies

- Kind: [anti-pattern](https://banes-lab.com/records/kind/anti-pattern.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
Building elaborate parallel factory class hierarchies where cloning an existing configured instance would suffice.

Referenced by
[Prototype Pattern](https://banes-lab.com/records/architecture/prototype-pattern.md)

How it is checked

Checked by
[Prototype Pattern](https://banes-lab.com/records/architecture/prototype-pattern.md)

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Concrete Constructor Coupling

- Kind: [anti-pattern](https://banes-lab.com/records/kind/anti-pattern.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
Instantiating concrete classes directly with constructors, coupling callers to specific implementations.

Referenced by
[Factory Method Pattern](https://banes-lab.com/records/architecture/factory-method-pattern.md)

How it is checked

Checked by
[Factory Method Pattern](https://banes-lab.com/records/architecture/factory-method-pattern.md)

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Controlled Instantiation

- Kind: [capability](https://banes-lab.com/records/kind/capability.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
The ability to govern how and when an object is created.

Referenced by
[Singleton Pattern](https://banes-lab.com/records/architecture/singleton-pattern.md)

How it is checked

Checked by
[Singleton Pattern](https://banes-lab.com/records/architecture/singleton-pattern.md)

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Copy Semantics

- Kind: [quality-attribute](https://banes-lab.com/records/kind/quality-attribute.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
The degree of care required to define correct deep versus shallow copying when cloning objects.

Referenced by
[Prototype Pattern](https://banes-lab.com/records/architecture/prototype-pattern.md)

How it is checked

Checked by
the tension resolution with prototype-pattern

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Creation Variation

- Kind: [constraint](https://banes-lab.com/records/kind/constraint.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
A precondition that different variants of a product must be produced depending on runtime context.

Referenced by
[Factory Pattern](https://banes-lab.com/records/architecture/factory-pattern.md)

How it is checked

Checked by
[Factory Pattern](https://banes-lab.com/records/architecture/factory-pattern.md)

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Deferred Instantiation

- Kind: [capability](https://banes-lab.com/records/kind/capability.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
The ability to let subclasses decide which class to instantiate, deferring the choice from the base class.

Referenced by
[Factory Method Pattern](https://banes-lab.com/records/architecture/factory-method-pattern.md)

How it is checked

Checked by
[Factory Method Pattern](https://banes-lab.com/records/architecture/factory-method-pattern.md)

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Dynamic Object Creation

- Kind: [capability](https://banes-lab.com/records/kind/capability.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
The ability to create new objects at runtime by cloning existing configured instances.

Referenced by
[Prototype Pattern](https://banes-lab.com/records/architecture/prototype-pattern.md)

How it is checked

Checked by
[Prototype Pattern](https://banes-lab.com/records/architecture/prototype-pattern.md)

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Family-Level Replacement

- Kind: [capability](https://banes-lab.com/records/kind/capability.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
The ability to swap an entire family of related products by changing a single factory.

Referenced by
[Abstract Factory Pattern](https://banes-lab.com/records/architecture/abstract-factory-pattern.md)

How it is checked

Checked by
[Abstract Factory Pattern](https://banes-lab.com/records/architecture/abstract-factory-pattern.md)

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Global Mutable State

- Kind: [anti-pattern](https://banes-lab.com/records/kind/anti-pattern.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
Exposing global variables that any code can mutate, creating hidden coupling and nondeterminism.

Referenced by
[Singleton Pattern](https://banes-lab.com/records/architecture/singleton-pattern.md)

How it is checked

Checked by
[Singleton Pattern](https://banes-lab.com/records/architecture/singleton-pattern.md)

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Inheritance Complexity

- Kind: [quality-attribute](https://banes-lab.com/records/kind/quality-attribute.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
The degree to which relying on subclassing to vary creation adds to the inheritance hierarchy's complexity.

Referenced by
[Factory Method Pattern](https://banes-lab.com/records/architecture/factory-method-pattern.md)

How it is checked

Checked by
the tension resolution with factory-method-pattern

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Mixed Product Families

- Kind: [anti-pattern](https://banes-lab.com/records/kind/anti-pattern.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
Combining products from different incompatible families, producing inconsistent sets of objects.

Referenced by
[Abstract Factory Pattern](https://banes-lab.com/records/architecture/abstract-factory-pattern.md)

How it is checked

Checked by
[Abstract Factory Pattern](https://banes-lab.com/records/architecture/abstract-factory-pattern.md)

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Polymorphic Construction

- Kind: [capability](https://banes-lab.com/records/kind/capability.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
The ability to create objects through a common interface without naming their concrete classes.

Referenced by
[Factory Pattern](https://banes-lab.com/records/architecture/factory-pattern.md)

How it is checked

Checked by
[Factory Pattern](https://banes-lab.com/records/architecture/factory-pattern.md)

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Related Product Variants

- Kind: [constraint](https://banes-lab.com/records/kind/constraint.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
The requirement that products form families of related variants meant to be used together.

Referenced by
[Abstract Factory Pattern](https://banes-lab.com/records/architecture/abstract-factory-pattern.md)

How it is checked

Checked by
[Abstract Factory Pattern](https://banes-lab.com/records/architecture/abstract-factory-pattern.md)

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Scattered Construction Logic

- Kind: [anti-pattern](https://banes-lab.com/records/kind/anti-pattern.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
Spreading object-creation logic across many call sites instead of centralizing it in a factory.

Referenced by
[Factory Pattern](https://banes-lab.com/records/architecture/factory-pattern.md)

How it is checked

Checked by
[Factory Pattern](https://banes-lab.com/records/architecture/factory-pattern.md)

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Shared Resource Access

- Kind: [capability](https://banes-lab.com/records/kind/capability.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
The ability to give many callers coordinated access to one shared resource.

Referenced by
[Singleton Pattern](https://banes-lab.com/records/architecture/singleton-pattern.md)

How it is checked

Checked by
[Singleton Pattern](https://banes-lab.com/records/architecture/singleton-pattern.md)

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Single-Instance Need

- Kind: [constraint](https://banes-lab.com/records/kind/constraint.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
A precondition that exactly one instance of a type must exist across the system.

Referenced by
[Singleton Pattern](https://banes-lab.com/records/architecture/singleton-pattern.md)

How it is checked

Checked by
[Singleton Pattern](https://banes-lab.com/records/architecture/singleton-pattern.md)

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Subclass-Controlled Creation

- Kind: [constraint](https://banes-lab.com/records/kind/constraint.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
The requirement that subclasses determine which concrete product a creator instantiates.

Referenced by
[Factory Method Pattern](https://banes-lab.com/records/architecture/factory-method-pattern.md)

How it is checked

Checked by
[Factory Method Pattern](https://banes-lab.com/records/architecture/factory-method-pattern.md)

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Telescoping Constructor

- Kind: [anti-pattern](https://banes-lab.com/records/kind/anti-pattern.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
Overloading constructors with ever more parameters to cover optional fields, producing unreadable call sites.

Referenced by
[Builder Pattern](https://banes-lab.com/records/architecture/builder-pattern.md)

How it is checked

Checked by
[Builder Pattern](https://banes-lab.com/records/architecture/builder-pattern.md)

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

### Valid Object Creation

- Kind: [capability](https://banes-lab.com/records/kind/capability.md)
- Category: [Creational Patterns](https://banes-lab.com/ontology/lexicon/lexicon-category-creational-patterns.md)
- Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)

Details

Definition
The ability to construct an object only once all its required parts are supplied and validated.

Referenced by
[Builder Pattern](https://banes-lab.com/records/architecture/builder-pattern.md)

How it is checked

Checked by
[Builder Pattern](https://banes-lab.com/records/architecture/builder-pattern.md)

Population
The term's definition and every architecture edge that names the term

Freshness
A verdict stands until the definition, the term's kind or an edge that names it changes

Refusal
The resolution gate fails an edge that resolves to no term, and a definition that opens as another kind

Observation
The resolution validator's pass over every edge target and every definition opening

Evidence
Watched to fire and to accept: a suite plants a term no edge names, a dangling dependency and a second check home, and the bundled terms pass

Authoritative side
The term record, which every edge that names the term cites

Depends on
Not answered

Shape it refuses
Not answered

## Links to

- [constraint](https://banes-lab.com/records/kind/constraint.md)
- [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)
- [Prototype Pattern](https://banes-lab.com/records/architecture/prototype-pattern.md)
- [quality-attribute](https://banes-lab.com/records/kind/quality-attribute.md)
- [Builder Pattern](https://banes-lab.com/records/architecture/builder-pattern.md)
- [anti-pattern](https://banes-lab.com/records/kind/anti-pattern.md)
- [Factory Method Pattern](https://banes-lab.com/records/architecture/factory-method-pattern.md)
- [capability](https://banes-lab.com/records/kind/capability.md)
- [Singleton Pattern](https://banes-lab.com/records/architecture/singleton-pattern.md)
- [Factory Pattern](https://banes-lab.com/records/architecture/factory-pattern.md)
- [Abstract Factory Pattern](https://banes-lab.com/records/architecture/abstract-factory-pattern.md)
