Шаблон плагина Java - PullRequest
       17

Шаблон плагина Java

2 голосов
/ 27 апреля 2009

Я новичок в Java, и я был бы признателен, если бы кто-нибудь здесь мог объяснить, как реализовать шаблон плагина Мартина Фаулера в Java.

Заранее спасибо.

1 Ответ

10 голосов
/ 27 апреля 2009

Проще говоря, вы определяете интерфейс для операций, которые вы хотите выполнить, и передаете объект во время выполнения, который реализует этот интерфейс. Так, например, вы можете иметь связь через локальную общую память и через удаленный TCP / IP. Вы создаете интерфейс, называете его IConnection, который имеет send() и recv(), а затем реализуете его в двух классах, LocalConnection и LongDistanceConnection.

Затем у вас есть другой класс, который должен общаться, скажем, TelephoneCall.

Чтобы сделать местный звонок, вы делаете

TelephoneCall call = new TelephoneCall(new LocalConnection());

Чтобы сделать междугородний звонок, вы делаете

TelephoneCall call = new TelephoneCall(new LongDistanceConnection());

и подпись конструктора

 public TelephoneCall(IConnection connect);
...