策略模式应用大量应用于解决巨型switch-case if-else。。。。。
具体使用方法 :
策略基类(BaseStrategy)包含一个虚算法,所有子类实现虚算法
容器类含有一个指向策略基类的指针,由外部指定生成的策略子类。
缺点:外部必须知道要生成的策略子类,但在ios中可以通过输出口来指定。如下列子:
容器类是一个由UIView派生的自定义子类(CustomView),CustomView包含一个BaseStrategy的引用(输出口),
在Xib中放置好CustomView,在xib中添加一个object对象,此对象类属于具体的策略算法类。此时连接CustomView中的输出口。
由控件方向拖到object对象。