ios 常用知识点详解Objective-C设计模式

设计模式-策略模式《十九》

2019-01-06  本文已影响73人  liyoucheng2014

何为策略模式

定义:定义一系列算法,把他们一个个封装起来,并且使他们可相互替换。
定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户

策略模式中的一个关键角色是策略类,它为所有支持的或相关的算法声明了一个共同接口。另外,还有使用策略接口来实现相关算法的具体策略类。场景(context)类的对象配置有一个具体策略对象的实例,场景对象使用策略接口调用由具体策略类定义的算法。静态关系图如下

CustomTextField及其相关InputValidator策略之间静态关系的类图

何时使用策略模式

1、 一个类在其操作中使用多个条件语句来定义许多行为。我们可以把相关的分支条件移到他们自己的策略类中。
2、需要算法的各种变体。
3、需要避免把复杂的、与算法相关的数据结构暴露给客户端。

使用步骤

优缺点

验证器使用策略模式

策略模式

Objective-C项目地址

上一篇下一篇

猜你喜欢

热点阅读