Lecture overview -- Keyboard shortcut: 'u'  Previous page: Patterns and Techniques [Section] -- Keyboard shortcut: 'p'  Next page: Object-oriented Design Patterns -- Keyboard shortcut: 'n'  Lecture notes - all slides and notes together  slide -- Keyboard shortcut: 't'  Textbook -- Keyboard shortcut: 'v'  Help page about these notes  Alphabetic index  Course home  Page 23 : 29
Object-oriented Programming in C#
Reference types, Value types, and Patterns
Design Patterns

A pattern is a named nugget of instructive information that captures the essential structure and insight of a successful family of proven solutions to a recurring problem that arises within a certain context and system of forces [Brad Appleton]

  • Worth noticing

    • Named: Eases communication about problems and solutions

    • Nugget: Emphasizes the value of the pattern

    • Recurring problem: A pattern is intended to solve a problem that tends to reappear.

    • Proven solution: The solution must be proven in a number of existing programs

    • Nontrivial solution: We are not interested in collecting trivial and obvious solutions

    • Context: The necessary conditions and situation for applying the pattern

    • Forces: Considerations and circumstances, often in mutual conflict with each other