diff --git a/README.md b/README.md index 7727ed73e..5f22f7ce3 100644 --- a/README.md +++ b/README.md @@ -69,6 +69,7 @@ Concurrency patterns are those types of design patterns that deal with the multi Presentation Tier patterns are the top-most level of the application, this is concerned with translating tasks and results to something the user can understand. +* [Model-View-Controller](#model-view-controller) * [Model-View-Presenter](#model-view-presenter) ### Architectural Patterns @@ -551,6 +552,14 @@ validation and for building to order **Applicability:** Use the Tolerant Reader pattern when * The communication schema can evolve and change and yet the receiving side should not break +## Model-View-Controller [↑](#list-of-design-patterns) +**Intent:** Separate the user interface into three interconnected components: the model, the view and the controller. Let the model manage the data, the view display the data and the controller mediate updating the data and redrawing the display. + +![alt text](https://github.com/iluwatar/java-design-patterns/blob/master/model-view-controller/etc/model-view-controller.png "Model-View-Controller") + +**Applicability:** Use the Model-View-Controller pattern when +* you want to clearly separate the domain data from its user interface representation + # Frequently asked questions