a description of a problem and a description of the user interface element to solve that problem, e
a description of a set of interacting classes that provide a framework for a solution to a generalized problem in a specific context or environment
a description of communicating objects and classes that are customized to solve a general software design problem within a particular context
a design scheme that programmers can learn and apply to their software in response to a specific problem or subproblem
a design solution to a software problem that occurs within a specific, recurring set of situations
a design structure that has been successfully used in a similar context--i
a documentation of a time-tested solution which keeps cropping up every now and then within a particular context
a documented best practice or core of a solution that has been applied (successfully) in multiple environments to solve a problem that recurs in a specific set of situations
a document that describes a specific design problem, such as presenting a login screen or creating a new account
a general abstraction of the solution across the range of problems in contexts where the pattern is appropriate
a generic solution to a recurring design problem that arises when building an application in a particular context
a language-independent codification of a solution to a common programming problem, expressed in such a way that it can apply to many contexts
an abstraction of a solution for a particular class of problems
an abstraction of the best solutions for a particular class of problems
an abstract software design construct for solving a particular problem or family of problems
an abstract solution to a problem
a named nugget of insight that captures a successful problem solution that can be applied to a range of situations
a name given to a recognised solution to a particular problem
a piece of literature that describes a design problem and a general solution to the problem in a particular context
a programming solution to a specific problem that has been documented so that the developer doesn't need to solve the same problem again
a proven, reusable solution to a recurring
a proven solution for a general design problem
a recurring solution that simplifies the design process
a reusable element of design
a reusable solution to a reoccurring problem in software
a solution for a common problem or issue
a solution that focuses on solving a particular problem or issue that commonly occurs
a solution to a commonly found development issue
a solution to a general design problem in the form of a set of interacting classes that have to be customized to create a specific design
a solution to a general problem in a particular context
a solution to a problem in context, it may describe the key aspects of a solution to a common design problem that enables its reuse
a solution to a problem that arises during the design phase with respect to a context
a standard solution to a standard problem in design
a stylized set of classes, objects, and interactions, working to solve a common problem
a way of describing the principles underlying a problem that occurs frequently in a specific context
a way to define a recurring problem and a solution that can be reused in different situations with a minimum of changes
Solution or computing framework for a known problem. The Gang of Four' s catalogue of design patterns [GoF 1995] contains their version for Eiffel [JMT 1999]. See also the classes ITERATOR and VISITOR.
A generalized solution to a common frequently occurring object oriented design problem.
Generally speaking - it is a "best practice"; an often used solution to a well defined problem. So a description of proved techniques and best practice for developing applications could be called a design pattern.
In software engineering, a design pattern is a general solution to a common problem in software design. A design pattern isn't a finished design that can be transformed directly into code; it is a description or template for how to solve a problem that can be used in many different situations. Object-oriented design patterns typically show relationships and interactions between classes or objects, without specifying the final application classes or objects that are involved. Algorithms are not thought of as design patterns, since they solve computational problems rather than design problems.
A reusable design for a set of classes to solve a particular kind of generic problem. Design Patterns describe teams of communicating classes and objects. They are also sometimes refered to as micro-architectures. See also Architecture Patterns.