2010-10-11 3 views
-1

В качестве параметров есть объекты, которым нужны два других объекта. Эти объекты параметров могут меняться во время выполнения.Как называется этот шаблон или техника?

Я использую другой объект, который содержит ссылки на объекты параметров. Эти ссылки всегда актуальны.

Все остальные объекты задают эти объекты для текущих параметров. Их больше не нужно обновлять. Будет обновлен только этот «справочный помощник».

Как называется этот шаблон или техника или имя «справочного помощника»?

Edit: Вот пример Java:

class ReferenceHelper { 

    private Parameter parameter; 

    public ReferenceHelper(Parameter parameter){setParameter(parameter);} 

    public Parameter getParameter(){return parameter;} 
    public void setParameter(Paramater parameter){ this.parameter = parameter;} 

} 

P.S. Я знаю его почти боб, но это не главное, потому что у него есть особая цель.

+0

Не могли бы вы рассказать нам больше о том, что вы делаете с этим классом? Это для какого-то «управления памятью», вы используете java для этого? Всегда ли параметр одного и того же интерфейса/класса или вы просто упрощаете ситуацию для примера. Если вы можете дать нам больше контекста, мы могли бы помочь вам больше. –

+0

У меня есть некоторые действия Swing, которые используются в нескольких местах. Им нужно два пареметра для выполнения своих действий. Я хотел иметь чистый способ обновить их. Им не нужно постоянно реагировать на изменения параметров, поэтому я не использовал слушателей. Другой способ - извлечь их из ActionMap Swing, бросить их в свой класс и затем обновить. Смотри не так чисто для меня. Теперь я прочитаю другие ответы. – PageFault

+0

Спасибо всем ответчикам. Это, безусловно, связано с привязкой данных. Теперь я знаю, куда идти. Действия уже просто вызывают реализацию действия независимого представления. Теперь я напишу КОНТРОЛЛЕР, который даже сделает просмотр вызова независимым. Действие будет иметь дело только с контроллером, который не изменится вообще. Эта тема может быть закрыта. – PageFault

ответ

0

Возможно, вы запрашиваете Observer Pattern (слушатель).

+0

Это шаблон, который будут использовать объекты, если они хотят реагировать на изменения указанных параметров. – Tom

+0

В данном примере я также проголосую за Агрегацию. – splash

1

Я думаю, что это называется агрегацией.

1

Что вы имеете в виду, может быть наблюдателем или фактически более конкретным связующим веществом, используемым для синхронизации данных (например, сохранение данных, отображаемых в представлении в синхронизации с его моделью).

В зависимости от того, ваши так называемые параметры это просто данные или какие-то события вы могли бы смотреть на Supervising Controller (Presenter) или Event Aggregator.

+0

Я думаю, что это очевидная техника привязки данных. –

+0

Редактирование его кода не было, пока я писал этот ответ, соответственно отредактирует. –

0

Я думаю, что вы ищете dependency injection.

EDIT: Я говорю это, потому что вы не хотите жестко кодировать создание объекта в нужном им объекте. Вместо этого вы хотите просто запросить их, когда это необходимо. Поэтому, если вы посмотрите на контейнеры DI, такие как StructureMap или Unity, они хранят всю информацию, необходимую для создания зависимости, которой нужен другой объект.

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