MVC"

From Documentation
m
Line 1: Line 1:
 
{{ZKDevelopersReferencePageHeader}}
 
{{ZKDevelopersReferencePageHeader}}
  
MVC (Model-View-Control) is a design pattern designed to separate the model, view and controller. It is strongly suggested to apply MVC pattern to your application, no only because the separation of UI from the code, but also easy-to-use and high performance.  
+
MVC (Model-View-Control) is a design pattern designed to separate the model, view and controller. It is strongly suggested to apply MVC pattern to your application, no only because it easy to develop and maintain, but also the performance is great.  
  
 
=View=
 
=View=

Revision as of 09:38, 3 March 2011

MVC (Model-View-Control) is a design pattern designed to separate the model, view and controller. It is strongly suggested to apply MVC pattern to your application, no only because it easy to develop and maintain, but also the performance is great.

View

The view is UI. As described in the UI Composing section, UI can be implemented by a ZUML document or in Java. For sake for description, ZUML is used to illustrate the concept and features.

Controller

The controller is a Java program that is used to glue UI (view) and Data (model) together.

For a simple UI, there is no need of controller. For example, the data of a Listbox could be abstracted by implementing ListModel.

For typical database access, the glue logic (i.e., control) can be handled by a generic feature called Data Binding. In other words, the read and write operations can be handled automatically by a generic Data Binding, and you don't need to write the glue logic at all.

To implement a custom controller, you could extend from GenericForwardComposer, or implement Composer from scratch. Then, specify it in the element it wants to handle in a ZUML document.

Model

The model is the data an application handles. Depending on the application requirement, it could be anything, though usually abstracted as beans and DAO.

In additions to handling the data in a controller, some components supports the abstraction model to uncouple UI and data. For example, grid, listbox and combobox support ListModel, while tree supports TreeModel.




Last Update : 2011/03/03

Copyright © Potix Corporation. This article is licensed under GNU Free Documentation License.