APP开发实战45-设计模式介绍3

本文介绍了在APP开发中常见的四种设计模式:策略模式用于封装算法,状态模式让对象根据其状态改变行为,命令模式将请求封装为对象便于参数化和事务处理,观察者模式实现了一对多的依赖关系,当对象状态改变时,依赖对象会自动更新。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

13.3.5策略模式

策略模式定义一系列的算法,并把每一个算法封装起来, 且使它们可相互替换,使得算法的变化可独立于使用它的客户。

此模式的使用场景: 

(1)针对同一类问题的多种处理方式,仅仅是具体行为有差别时。

(2)需要安全地封装多种同一类型操作时。

(3)出现同一抽象类有多个子类,而又需要使用if-else或switch-case来选择具体子类时。

    如各类列表的排序功能,及计算各类商品的费用时(不同商品的单价和总价的计算方式可能不同),可以使用策略模式。

13.3.6状态模式

状态模式允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它所属的类。

状态模式将每一个条件分支放入一个独立的类中,这使得可以根据对象自身的情况将对象状态作为一个对象,这一对象可以不依赖于其他对象而独立变化,通过多态来去除过多的、重复的if-else等分支语句。

此模式的使用场景: 

(1)一个对象的行为取决于它的状态,且它必须在运行时根据状态改变它的行为。

(2)代码中包含大量与对象状态有关的条件语句,且这些分支依赖于改对象的状态。

(3)出现同一抽象类有多个子类,而又需要使用if-else或switch-case来选择具体子类时。

如电商APP的订单对象有多种状态,及用户登

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值