2010-11-22 3 views
2

В примерах для RobotLegs, похоже, что посредники используются на каждой кнопке/textArea, а не на пользовательском компоненте, который содержит этих детей. Это будет очень много времени, не так ли?Flex, RobotLegs: вы должны опосредовать все дочерние компоненты визуального компонента?

От Joel Крючки InsideRia Example

Dependency Injection лучше работает с однозначных классов. Что это значит, заключается в том, что, расширяя TextArea в наш новый класс MessageView , мы создаем конкретный компонент вида для инъекции зависимостей . Этот важен, если наша заявка была , чтобы иметь несколько TextAreas, которые обслуживали разные цели. Таким образом, разделяя классы , мы четко обозначаем , определяющие намерение класса и , что позволяет использовать инъекции зависимостей , чтобы эффективно выполнять свою работу.

ответ

1

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

+0

Ах, я, вероятно, воспринимаю вещи слишком буквально, thnks. Видел ваш блог, кстати, вы все что-либо делали с C++ (его боль в заднице после использования «хороших» языков, таких как AS3 и Java!) – Ryan 2010-11-23 09:27:44

0

Одно эмпирическое правило, которое я использую, думает, что этот компонент нуждается в любом сообщении с остальной частью приложения или его единственной частью целого. Имейте в виду, что медиатор предназначен только для того, чтобы служить мостом между представлением и приложением.

Например, если у меня есть вид с формой (как форма входа), я не опосредую все дочерние компоненты (текстовые поля, кнопки и т. Д.), Потому что это будет бессмысленно и будет иметь распространение классов и объектов во время выполнения. Когда я делаю форму, я думаю, что представляет собой ее взгляд? и что другие части приложения должны делать с ним? Когда пользователь заполняет форму и нажимает кнопку, представление отправляет событие (LoginRequestEvent, для этого случая), а затем медиатор должен повторно передать это событие, сделав медиатор очень худым.

Но с практикой каркаса вы придумаете это ощущение того, что вы делаете посредником. Например, в одном приложении я посредничаю каждый элемент рендеринга элементов списка, а на другом я посредничаю стек представления с двумя или тремя навигационными элементами.

Надеюсь, это поможет

 Смежные вопросы

  • Нет связанных вопросов^_^