Где мне это реализовать? Просмотр или ViewController?

Мне нужно реализовать представление формы или, другими словами: класс, который используется для размещения сложной формы ввода на экране.

Форма состоит из FormComponents. Существует метод addFormComponent() для составления формы с ними. Кроме того, у формы есть метод isValid(), который будет проходить через все FormComponents и проверять связанные с ними FormValidators.

Наверняка у этой штуки много "интеллекта", но по большей части это просто обращение к какому-то другому классу. Например, метод isValid() делает классные вещи, но на самом деле он вызывает только методы isValid() компонентов FormComponents, которые зарегистрированы в массиве. Ничего особенного.

Ну, как говорится, должен ли я сделать для этого толстый FormViewController, или представление вполне подойдет?

Насколько я понимаю, ViewController используется, когда задействована какая-то большая логика. В этом случае представление формы имеет шаблон, который просто перебирает компоненты формы и включает их. Каждый FormComponent, в свою очередь, имеет свой собственный шаблон и выполняет свои функции.

Я всегда боролся с ViewController и View, и я думаю, что буду продолжать делать это, пока не получу хороший R.I.P. кирпич... но, может быть, кто-то может немного прояснить это ;-)


person openfrog    schedule 10.01.2010    source источник


Ответы (1)


Пурист во мне говорит, что это принадлежит ViewController. Я думаю, возможно, это будет зависеть от используемой вами структуры. Например, этот тип настройки будет очень легко реализован в объекте Spring Controller. Похоже, что создание контроллера в вашем случае потребует много дополнительной работы.

Ничто никогда не высечено в камне. На данный момент вы можете реализовать в представлении, и если это окажется огромным бременем, переместите его в класс контроллера. Знать, когда проводить рефакторинг, — сложная часть.

person D.C.    schedule 10.01.2010