设计模式(十三)—— 模块化建设:建造者模式;做好备份:备忘录模式

建造者模式

建造者模式(Builder Pattern) 使用多个简单的对象一步一步构建一个复杂的对象。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。通俗的来讲就是讲一个复杂的对象的创建,拆分为若干子过程。

  • 在一些零部件基本不发生变化,但是组合经常发生变化的时候考虑使用建造者模式
  • 使用建造者模式,独立的建造者相对独立,易于扩展,便于控制细节风险
  • 使用建造者模式,产品需要有共同点,范围使用有限制。如果内部变化复杂,会有很多建造者类

列如:
1、游戏玩家的装备:武器、技能、皮肤、外观模型,每一块的结构相对固定,但是不同的组合会有不同的展示效果。
2、汉堡的制作:面包、蔬菜、肉、沙拉,原料的不同,制作出来的汉堡也是不同的。用面向对象的思想实现汉堡的制作就是一个典型的建造者模式的范例。

备忘录模式

备忘录模式,保存一个对象的状态,以便在适当的时候恢复对象。属于行为型模式
简单来说,备忘录模式就是在设计对象时,需要对一些关键的字段和数据块预留保存、恢复数据的接口。允许用取消不确定或者错误的操作,能够恢复到他原先的状态。给用户提供一个恢复机制,提供可回滚的操作。

  • 使用备完录模式得注意内存,如果需要保存的数据过多,势必会占用比较大的资源,并且每一次保存都会消耗一定的内存。因此使用备忘录模式时必须根据实际的需求出发,设计时尽量极简化的存储和恢复。

结尾闲谈:

之所以把这两种不相干的设计模式放一块记录,因为这两种设计模式的实现都很简单,没有过多复杂的设计,在设计对象时预留相应的接口即可。

开始写博客之后渐渐的发现,工作之余真的需要多学习,多总结。刚毕业那会儿曾经一次面试问了一些设计模式的问题,我竟然一问三不知,虽然那次面试的算法题都做了出来,其它的很多问题也都回答上了,但是最后还是因为基础不牢靠而面试失败。在学习了设计模式之后再回顾我之前的代码,发现很多代码在潜移默化中已经使用的设计模式的理念了,只是不自知而已。看了一些大牛的博客之后决心痛改前非,坚持写博客,总结学习工作的所学所得,这也是一个不断自我提升的过程。前面荒废了几年,从现在起,努力从菜鸟向大牛们看齐。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值