21、设计模式中的策略与命令模式详解

设计模式中的策略与命令模式详解

在软件开发领域,设计模式是解决常见问题的经典方案。策略模式和命令模式是其中非常实用的两种模式,下面将详细介绍它们的概念、应用场景以及如何在实际开发中运用。

策略模式概述

策略模式允许客户端(上下文)类使用相关算法的不同变体。以自定义 UITextField 的输入验证器为例,不同的验证器可以改变自定义 UITextField 的核心功能。策略模式与装饰器模式有些相似,但装饰器模式是从外部扩展对象的行为,而策略模式则是将不同的策略封装在对象内部。可以说,装饰器模式改变对象的“外表”,而策略模式改变对象的“核心”。

在实际开发中,我们可能会遇到为 StrategyViewController 中定义的 numericTextField_ alphaTextField_ 分配正确的具体 InputValidator 实例的问题。通过将类的某些属性或特性声明为 IBOutlet ,我们可以在Interface Builder中使用引用连接来构建所需的对象。

命令模式的概念

命令模式借鉴了战场上将军将指令封装在密封信封中交给士兵执行的思想。在面向对象设计中,我们将指令封装为不同的命令对象,这些对象可以在不同时间被不同客户端传递和重用。

命令对象封装了如何对目标执行指令的信息,使得客户端或调用者无需了解目标的任何细节,就能对其执行可用的操作。通过将请求封装为对象,客户端可以对请求进行参数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值