Широко известной является модель MVC - Model View Controller. Однако при реализации проектов с этой архитектурой часто приходится повторять структуру модели в компонентах View и объектах взаимодействия с базой данных. Данная система призвана облегчить написание такого рода кода.
Например, пусть у нас есть класс в Model (в модели предметной области):
class Person {
String Name;
int Age;
}Для него мы сделали красивую таблицу для редактирования (с сортировкой и т.д.):
| Фамилия И.О. | Возраст (лет) |
| Иванов И.И. | 25 |
Хотелось бы при добавлении поля к классу Person не изменять проект ещё в нескольких местах, а чтобы View обновились автоматически.