В нашей модели объект формы представляет атрибуты одного или нескольких объектов предметной области, оформленные в виде типизованных свойств. Форма управляет жизненным циклом объектов предметной области, а также обращениями к фасадам для поддержки транзакций и долгосрочного сохранения данных. Каждая форма представляет полный экран со множеством взаимодействующих объектов, хотя в некоторых ограниченных частных случаях возможно применение подформ.
Однако трюк заключается в том, что форма абсолютно не визуальна. Она не имеет дела с виджетами – только с объектами, свойствами и взаимодействиями между этими свойствами. Пользовательский интерфейс может связать логическое свойство с любой разновидностью представления: флажком, кнопкой-выключателем, текстовым полем или переключателем. Форме это совершенно безразлично. Она знает лишь о существовании свойства, способного принимать значения «истина/ложь».
Форма никогда не обращается с вызовами к своему объекту экрана. Большинству из них неизвестен даже конкретный класс своего экрана. Все взаимодействия между формами и экранами осуществляются через свойства и привязки.
Related posts: