天天看點

iOS設計模式 - 原型

iOS設計模式 - 原型

iOS設計模式 - 原型

原理圖

iOS設計模式 - 原型

說明

1. 原型模式指的是從一個已有的對象複制并建立出新的對象

2. 當一個類的執行個體之間存在差異,而這些差異僅是狀态的若幹組合,複制原型要比手工執行個體化更加友善

3. 當一個類并不容易建立(比如有着複雜的組合對象),且複制已有的組合對象要比對副本修改更加容易,此時,可以考慮使用原型模式

源碼

<a href="https://github.com/YouXianMing/iOS-Design-Patterns" target="_blank">https://github.com/YouXianMing/iOS-Design-Patterns</a>

分析

抽象基類遵循了複制協定并實作了基本複制功能

iOS設計模式 - 原型

執行個體化的類通過繼承抽象基類來繼承複制功能

iOS設計模式 - 原型

* 進行字典和數組的深層次拷貝

iOS設計模式 - 原型

* 數組與字典已完成了深層次拷貝

iOS設計模式 - 原型

數組中的對象(或者字典中的對象)在實作拷貝時,也是需要實作NSCopying協定的,也可以繼承實作了NSCopying協定的基類

iOS設計模式 - 原型

繼續閱讀