浏览 4411 次
锁定老帖子 主题:设计模式(一)——策略模式
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2012-07-04
设计模式(一)——策略模式
本文描述的是策略模式 我们假设有如下场景: 我们使用聊天工具聊天时,可以发送点对点消息(私聊)和点对多消息(群聊),而发送不同的消息执行的操作是不一样的,也就是说我们在不同的场景下(私聊或者群聊)发送消息时会调用不同的发送方法,但是我们只有一个消息发送器(可以理解为发送消息时的发送按钮),我们希望可以通过这消息发送器发送任何类型的消息。 所以如下代码描述了如何使用策略模式实现上述需求: 我们先定义一个消息的公共接口,所有不同类型的消息都实现这个接口,这个接口包含一个发送方法
然后我们定义两个类实现该接口,分别是一个点对点消息和点对多消息:
然后定义一个消息发送器
最后我们看如何使用这个消息发送器发送不同类型的消息,我们假设有一个用户:
OK,到这里,一个简单的策略模式的实现就完成了,使用策略模式的好处是,我们可以使用这个消息发送器发送任何类型的消息,而你要做的就是定义一个新的消息,该消息实现了IMessage接口,然后通过这个消息发送器就可以调用,其余的都不用考虑。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |