我有一个负责发送和接收消息的类。使用myInstance.send(message, channel)
发送消息,并通过注册MessageListener
通道来接收消息。
我通常会把这个称为相当通用的东西,例如MessageManager,但我最近阅读了Naming Classes - How to avoid calling everything a "<WhatEver>Manager"?,这让我试着找到另一个名字。我最接近一个好名字的是MessageDispatcher,它并没有真正传达同样接收消息的事实。对于这种性质的类,是否有任何通常使用的名称?
答案 0 :(得分:4)
在处理邮件(see more info on publish/subscribe pattern here)时,我倾向于喜欢名称发布商和订阅者。
如果你的消息处理类似于一个整洁而整洁的命名策略可以将整个事物分离到这些接口中。
// Publisher of messages
public interface MessagePublisher {
void send(Message m, Channel c);
}
// Subscriber of messages
public interface MessageSubscriber {
void messageReceived(Message r);
}
// Handles registration
public interface MessageSubscriberAware {
void registerMessageSubscriber(MessageSubscriber s, Channel c);
}
// The "glue" - the concrete implementation
public class MessageDispatcher implements MessagePublisher, MessageSubscriberAware {
// Impl
}
具体实现可以命名为MessageDispatcher
,它是订阅者的意识,因此可以分发已发布的消息。