Design Patterns Design Patterns Design Patterns Design Patterns Patrones de diseño

Design Patterns

Design Patterns is a set of best design practices that are used to address many recurring problems in object-oriented programming.

The concept of Design Patterns was the result of work done by a group of 4 people (Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides, known as "the Gang of Four") published in 1995 in a book titled "Design Patterns: Elements of Reusable Object-Oriented Software" in which they outlined 23 design patterns.

A design pattern can be regarded as a document which defines a class structure which addresses a particular situation. Design patterns are divided into three major groups:

  • Creation Patterns: Abstract Factory Pattern, Builder Pattern, Factory Method Pattern, Prototype Pattern, Singleton Pattern.
  • Structural Patterns: Adapter Pattern, Bridge Pattern, Composite Pattern, Decorator Pattern, Facade Pattern, Flyweight Pattern, Proxy Pattern.
  • Behaviour Patterns: Chain of Responsibility Pattern, Command Pattern, Interpreter Pattern, Iterater Pattern, Mediator Pattern, Memento Pattern, Observer Pattern, State Pattern, Strategy Pattern, Template Method Pattern, Visitor Pattern.

The following are examples of design patterns:

  • MVC (Model-View-Controller) Pattern: comes from the principle that all applications can be broken down into three separate layers:
    • Model: the data used in the application
    • View: how the data is represented to the user
    • Controller: the way data is processed in the user interface
  • Proxy Pattern which defines an intermediary object which calls on a remote object and which is transparent to the user.



Last update on Thursday October 16, 2008 02:43:18 PM.This document entitled « Design Patterns » from Kioskea (en.kioskea.net) is made available under the Creative Commons license. You can copy, modify copies of this page, under the conditions stipulated by the licence, as this note appears clearly.

Best answers for « Design Patterns » in :
The 3D software for designing houses ShowThe 3D software for designing houses Free software Architecture 3D 1.5 Google SketchUp Other software Home Plan Pro FloorPlan3D What software ican usesto make a 3D plan of my house? Free software Architecture 3D...
Inserting an animated gif in Excel ShowInserting an animated gif in Excel To insert an animated gif image in an Excel spreadsheet, you must insert the image into a control. To insert the control, go to the View menu/Toolbars/Control Toolbox Activate the first button Design...
Choosing your PC case(mod) ShowChoosing your PC case(mod) Intro Things to consider The size of the case Cooling system Sound constraints The design Feel like it's time to change or modify your PC? Before focusing on the aesthetic qualities, it is necessary...
Download DB Designer ShowAllows you to handle your databases the most efficient way. DBDesigner 4 is a visual database design system that integrates database design, modeling, creation and maintenance into a single, seamless environment. It combines a simple and clear...
Webmastering - Website Design ShowWebsite Design Website design must be a user-oriented collective effort. This means that, when possible, the design process must include participation of a group of representatives from the business or organization and their beneficiaries, with the...
Web Designer ShowWeb Designer A web designer designs the visual appearance of websites and defines their look (including modeling, layout of graphic elements, choosing images, colours, fonts, etc.). The web designer's goal is to uphold the company or organisation's...
Web Designer ShowWeb Designer A web designer designs the visual appearance of websites and defines their look (including modeling, layout of graphic elements, choosing images, colours, fonts, etc.). The web designer's goal is to uphold the company or organisation's...