第2章 商场促销——策略模式

1、类设计经验积累
【第2章 商场促销——策略模式】面向对象编程,并不是类越多越好,类的划分是为了封装,但是分类的基础是抽象,具有相同属性和功能的抽象集合才是类 。
2、所谓策略模式
它定义了算法家族,分别封装起来,让他们之间可以相互替换,此模式让算法的变化,不会影响到使用算法的客户 。
3、 使用简单工厂模式实现商场促销
4、使用策略模式实现商场促销 (1)策略模式类图
(2)策略模式实现商场促销
实例化一个策略上下文对象,向其传递一个策略(也可以向其传递一个参数,在其内部自动生成一个策略,这便是工厂模式结合策略模式 。) 。

第2章 商场促销——策略模式

文章插图
策略上下问对象,会根据客户端传递的参数,使用初始化上下文对象的策略进行处理用户传递的参数,并返回一个结果 。
(3)策略模式和工厂模式结合实现商场促销
策略上下文对象中必须要有一个策略,
对于第二点的详尽解释:
实例化策略上下文对象时,可以不向它传递策略,而是传递一条信息,并且需要在它写一个函数,这个函数内部可以根据这条信息实例化一个策略 。然后策略上下文对象可以根据这个策略进行计算 。这就是工厂模式和策略模式的结合 。
所谓的策略实际就是一个算法类对象,或者说一个函数类对象 。