Где я должен разместить ConcreteCommand в иерархии пакетов Java? - PullRequest
1 голос
/ 11 ноября 2011

просто реализует шаблон команды и задаюсь вопросом, куда мне поместить реализации ConcreteCommand в иерархию пакетов.

http://en.wikipedia.org/wiki/Command_pattern

Должен ли я держать их рядом с Командой, Получателем или Клиентом?

скажем, приложение имеет такую ​​структуру пакета

app.client.
app.services.
app.services.service1.
app.services.service2.
app.command.

Я хочу создать команды для

app.services.service1.Service1 
app.services.service1.Service2

Так, где я должен создать эти команды? Под app.command? или под app.client? или рядом с каждым сервисом?

РЕДАКТИРОВАННЫЙ: с близким, я имею в виду, под пакетами типа

app.client.commands.
app.command.commands.
app.services.service1.commands.
app.services.service2.commands.
app.services.commands.

Какая лучшая практика здесь?

Полагаю, это больше вопрос стиля, так что вы думаете?

спасибо.

Ответы [ 2 ]

2 голосов
/ 11 ноября 2011

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

0 голосов
/ 11 ноября 2011

Пока имя пакета имеет смысл в каждом контексте, оно будет использоваться и однозначно, тогда это не имеет значения.

...