Рассматривать данные как свойство.Данные - это свойство, которое не нужно хранить так, как оно было назначено.Свойство может быть получено / сохранено путем преобразования из / в его резервное хранилище.Более чем одно свойство может быть получено из комбинации преобразования внутренних ваших хранимых переменных.
private double booTheBackingStore;
private int myfactor;
public String data{
get{
return "<data>"+booTheBackingStore*booTheBackingStore+"</data>";
}
set{
String boo = parselTheXml(value);
double booger;
Double.tryParse(boo, out booger);
booTheBackingStore = Math.sqrt(booger);
}
}
public double dada{
get{
return exoTransform(booTheBackingStore, myfactor);
}
set{
booTheBackingStore = endoTransform(value, myfactor);
}
}
Дополнительная информация:
Допустим, ваш класспросмотр веб-страницы, в котором есть режимы редактирования, просмотра, вставки, удаления.Для каждого из этих режимов ваш вид должен переустанавливать / переставлять виджеты.Более того, вам придется повторно применять стили.
С точки зрения MVP, вам необходимо отделить вашу презентацию от вашего взгляда.Представление должно выставить себя с точки зрения общественной собственности.Таким образом, свойство set / get mode будет инкапсулировать все внутренние свойства, которые необходимо выполнить в пользовательском интерфейсе.Ведущий не должен заботиться о том, как выглядит само представление.И у представления не должно быть никакой логики управления процессом или данными.
Открытое свойство является важной частью для облегчения инкапсуляции, чтобы выставлять только контракты между представлением и презентатором.
НадежныйПроектирование пользовательского интерфейса будет иметь конечный автомат на стороне сервера, который взаимодействует с конечным автоматом на стороне клиента, который, в свою очередь, упорядочивает агенты представления, что, в свою очередь, требует представления свойств UI-View.Ваш сервер не должен напрямую обращаться к клиенту.Также не должен ваш конечный автомат вашего клиента.Ваш докладчик направляется государством-клиентом для выполнения требований UI-View.Докладчик просто выдает спрос, скажем, на режим EDIT.Он не будет вмешиваться в UI-View, как реализован этот РЕДАКТИРОВАНИЕ.UI-View не должен поддерживать состояние UI.
Эта развязка предназначена для облегчения модульного тестирования и, что наиболее важно, модульной замены компонентов.Так что ваша последовательность презентаций будет работать так же хорошо, как только вы поменяете пользовательский интерфейс браузера на мобильный.Поскольку мобильный пользовательский интерфейс будет реализовывать различные режимы иначе, чем в пользовательском интерфейсе браузера.Или пользовательский интерфейс рабочего стола.
Вам необходимо больше узнать о концепциях компонентного проектирования и "инкапсуляции".