Мой сценарий выглядит так:Рекомендации по ООП для проектирования объектов обмена сообщениями
У меня есть система обмена сообщениями, когда вы отправляете сообщение в разные адресаты по типу сообщения.
, что мой текущий дизайн:
Abstract class: MessageKindAbs
MessageKind1 extends MessageKindAbs
MessageKind2 extends MessageKindAbs
MessageKind3 extends MessageKindAbs
и так далее ..
Теперь MessageKind3
это особый вид. его цель - отправить содержимое MessageKind1
или MessageKind2
для регистрации процесса.
Так что я создал внутри MessageKind3
список MessageKind3Items
:
list<MessageKind3Item> MessageKind3ItemList...
MessageKind3Item
включает информацию о MessageKind1
/MessageKind2
для целей регистрации.
поэтому в основном, что происходит, каждый MessageKind3Item
также включает в себя MessageKindAbs
тип.
, но это не имеет для меня никакого смысла.
Например: отправить сообщение в очередь БД и зарегистрировать информацию, содержащуюся в MessageKind1
, и MessageKind2
.
Так что мой дизайн ООП был немного сложнее.
Любой может помочь мне найти свой путь сюда?
Возможно, я создал внутри MessageKind3Item
другой тип экземпляра MessageKindAbs
, но я не уверен, что это имеет смысл.
спасибо, лучей,
Я имею в виду ссылочный тип не экземпляр. 2. Я пытаюсь использовать ООП, чтобы свести к минимуму плотное соединение. – rayman
Извините, я не уверен, что вы имеете в виду. Мое предложение состоит в том, чтобы вводить в журнал элементы, а не экземпляры разных классов - это уменьшит связь компонентов и их знания друг о друге. – Vitaly
MessageKind3 Предположим, что нужно делать больше вещей, а затем просто регистрировать. регистрация MessageKind1/MessageKind2 была всего лишь одним примером. он мог бы, например, отправить эти сообщения в службу электронной почты. Я просто приведу пример. дело в том, что каждый объект MessageKind должен быть адресован другому месту назначения, в то время как MessageKind3 содержит информацию MessageKind1 и MessageKind2 – rayman