Objective-C设计模式

设计模式-原型模式《三》

2019-01-01  本文已影响10人  liyoucheng2014

何为原型模式

定义:使用原型实例指定创建对象的种类,并通过复制这个原型创建新的对象

静态关系图如下

原型模式通用类图 原型模式的类图

何时使用原型模式

1、需要创建的对象应独立于其类型与创建方式
2、要实例化的类是在运行时决定的
3、不想要与产品相对应的工厂层次
4、不同类的实例间的差异仅是状态的若干组合。因此复制相应数量的原型比手工实例化更加方便
5、类不容易创建,比如每个组件可把其他组件作为子节点的组合对象。复制已有的组合对象并对副本进行修改会更加容易

浅复制与深复制

浅复制:只复制指针值而不是实际资源
深复制:不仅复制指针值,还复制指针所指向的资源

实现原生模式的Mark组合类的类图

实现NSCopy协议时注意深拷贝与浅拷贝

深拷贝和浅拷贝针对集合

Objective-C项目地址

上一篇下一篇

猜你喜欢

热点阅读