結構型之三-組合模式
Composite(組合模式)
將物件組合成樹形結構以表示‘部分-整體’的層次結構。組合模式使得使用者對單個物件和組合物件的使用具有一致性。
VC.m
//當需求中體現部分與整體層次的結構時,以及你希望使用者可以忽略組合物件與單個物件的不同,統一地使用組合結構中的所有物件,接應該考慮使用組合模式了。
HCDConcreteCompany *root = [[HCDConcreteCompany alloc]initWithName:@"總公司"];
[root add:[[HCDHRDepartment alloc]initWithName:@"總公司人力資源部"]];
[root add:[[HCDFinanceDepartment alloc]initWithName:@"總公司財務部"]];
HCDConcreteCompany *comp = [[HCDConcreteCompany alloc]initWithName:@"上海華東分公司"];
[comp add:[[HCDHRDepartment alloc]initWithName:@"上海華東分公司人力資源部"]];
[comp add:[[HCDFinanceDepartment alloc]initWithName:@"上海華東分公司財務部"]];
[root add:comp];
HCDConcreteCompany *comp1 = [[HCDConcreteCompany alloc]initWithName:@"杭州辦事處"];
[comp1 add:[[HCDHRDepartment alloc]initWithName:@"杭州辦事處人力資源部"]];
[comp1 add:[[HCDFinanceDepartment alloc]initWithName:@"杭州辦事處財務部"]];
[root add:comp1];
NSLog(@"結構圖:----------------------------");
[root display];
NSLog(@"職責:---------------------------");
[root lineofDuty];
設計圖
相關文章
- 結構型-組合模式模式
- 8.結構型-組合模式模式
- 設計模式--組合模式Composite(結構型)設計模式
- JAVA設計模式(10):結構型-組合模式(Composite)Java設計模式
- 【設計模式自習室】結構型:組合模式 Composite設計模式
- 設計模式(十四、十五)----結構型模式之組合模式設計模式
- 樹形結構的處理——組合模式(五)模式
- 樹形結構的處理——組合模式(四)模式
- 樹形結構的處理——組合模式(三)模式
- 樹形結構的處理——組合模式(二)模式
- 樹形結構的處理——組合模式(一)模式
- 梳理公司的組織架構 — 組合模式架構模式
- 梳理公司的組織架構 --- 組合模式架構模式
- 結構型-代理模式模式
- 結構型:策略模式模式
- 極簡架構模式-組合實體模式架構模式
- 組合模式模式
- 設計模式-結構型設計模式
- 設計模式系列之組合模式(Composite Pattern)——樹形結構的處理設計模式
- 設計模式之代理模式(結構型)設計模式
- 設計模式--代理模式Proxy(結構型)設計模式
- 結構型-裝飾器模式模式
- (Java)設計模式:結構型Java設計模式
- 結構型-介面卡模式模式
- 結構型-Facade模式模式
- 【設計模式】組合模式設計模式
- 設計模式《組合模式》設計模式
- 設計模式-組合模式設計模式
- 設計模式:組合模式設計模式
- Scala結構型別與複合型別解析型別
- 【設計模式】第九篇:組合模式解決層級關係結構問題設計模式
- PHP結構型設計模式(下)PHP設計模式
- PHP結構型設計模式(上)PHP設計模式
- js設計模式–組合模式JS設計模式
- js設計模式--組合模式JS設計模式
- 設計模式系列 – 組合模式設計模式
- javascript設計模式組合模式JavaScript設計模式
- 設計模式(十三):組合模式設計模式