Соглашения об именах для сервисных оболочек cfc в Coldfusion MVC - PullRequest
3 голосов
/ 28 февраля 2012

У меня есть приложение, которое обрабатывает лицензии на различные продукты. В настоящее время я переориентирую на базовую инфраструктуру MVC (пока не использую ни одной из больших). У нас есть различные базовые сценарии, например кто-то может сделать cc покупку продукта через веб-сайт. Это запускает объекты create customer, create order, create license и т. Д. (В основном это просто вставки в db с использованием bean-компонентов и шлюзов, так как я думаю, что это «стандарт»?).

В любом случае, чтобы справиться со всем этим, я вызываю purchaseService.cfc, который проверяет различные бизнес-правила и объединяет процессы уровня постоянства (db). Кажется, это работает нормально, и я подумал, что cfc purchaseService хорошо справился с этим процессом.

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

Что касается соглашений об именах, существуют ли какие-либо правила, помогающие решить, как называть эти службы "оболочкой" типа cfc. Большинство примеров, которые я вижу, относятся к объекту, например пользовательский объект имеет userGateway и userService и не дает примеров случаев, когда нам нужна оболочка для вызова нескольких объектов. Является ли то, что я сделал, в порядке соглашения с использованием объекта purchaseService? (Я собирался назвать его CustomerlicenceOrder.cfc, основываясь на других объектах, от которых он зависел. Что я буду делать с новым требованием? Возможно, создадим другой объект службы? много о OO, MVC и т. д. и т. д., но чем больше я читаю, тем больше у меня возникает вопросов:)

Спасибо

1 Ответ

1 голос
/ 18 марта 2012

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

Подробнее о шаблоне Service Layer , если вам интересно.

...