[转载]策略模式-5 策略模式-5 - 云飞龙行 - 博客园. 3.4 策略模式结合模板方法模式 在实际应用策略模式的过程中,经常会出现这样一种情况,就是发现这一系列算法的实现上存在公共功能,甚至这一系列算法的实现步骤都是一样的,只是在某些局 部步骤上有所不同,这个时候,就需要对策略模式进行些许的变化使用了。 对于一系列算法的实现上存在公共功能的情况,策略模式可以有如下三种实现方式: 一个是在上下文当中实现公 C# mikel 2010-07-07 32 热度 0评论
[转载]策略模式-4 策略模式-4 - 云飞龙行 - 博客园. 3.3 Context和Strategy的关系 在策略模式中,通常是上下文使用具体的策略实现对象,反过来,策略实现对象也可以从上下文获取所需要的数据,因此可以将上下文当参数传递给策略实现对象, 这种情况下上下文和策略实现对象是紧密耦合的。 在这种情况下,上下文封装着具体策略对象进行算法运算所需要的数据,具体策略对象通过回调上下文的方法来获取这些数 C# mikel 2010-07-01 60 热度 0评论
[转载]策略模式-3 策略模式-3 - 云飞龙行 - 博客园. 3 模式讲解 3.1 认识策略模式 (1)策略模式的功能 策略模式的功能是把具体的算法实现,从具体的业务处理里面独立出来,把它们实现成为单独的算法类,从而形成一系列的算法,并让这些算法可以相互替换。 策略模式的重心不是如何来实现算法,而是如何组织、调用这些算法,从而让程序结构更灵活、具有更好的维护性和扩展性。 (2)策略模式和if-else语句 C# mikel 2010-06-25 48 热度 0评论
[转载]策略模式-2 策略模式-2 - 云飞龙行 - 博客园. 2 解决方案 2.1 策略模式来解决 用来解决上述问题的一个合理的解决方案就是策略模式。那么什么是策略模式呢? (1)策略模式定义 定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化。 (2)应用策略模式来解决的思路 仔细分析上面的问题,先来把它抽象一下,各种计算报价的计算方式就好比是具体的算 C# mikel 2010-06-24 44 热度 0评论
[转载]策略模式-1 策略模式-1 - 云飞龙行 - 博客园. 首先感谢众多朋友的支持、评论和鼓励,只有多多努力,写点好的博文来回报大家的好意! 接下来想写写另外一个虽然较简单,但是使用很频繁的模式——策略模式 策略模式(Strategy) 1 场景问题 1.1 报价管理 向客户报价,对于销售部门的人来讲,这是一个非常重大、非常复杂的问题,对不同的客户要报不同的价格,比如: (1)对普通客户或者是新客户报的 C# mikel 2010-06-23 44 热度 0评论