The Free On-line Dictionary of Computing (30 December 2018):
design pattern
    A description of an object-oriented design
   technique which names, abstracts and identifies aspects of a
   design structure that are useful for creating an
   object-oriented design.  The design pattern identifies
   classes and instances, their roles, collaborations and
   responsibilities.  Each design pattern focuses on a particular
   object-oriented design problem or issue.  It describes when it
   applies, whether it can be applied in the presence of other
   design constraints, and the consequences and trade-offs of its
   use.
   Home
   (http://st-www.cs.uiuc.edu/users/patterns/patterns.html).
   ["Design Patterns: Elements of Reusable Object-Oriented
   Software", Erich Gamma, Richard Helm, Ralph Johnson, and John
   Vlissides].
   (1997-07-21)