大话设计模式学习心得2
生活随笔
收集整理的這篇文章主要介紹了
大话设计模式学习心得2
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.迪米特法則
類之間的聯系越少越好,
2.外觀模式
添加一個新的類,包含子類,實現不同的組合,降低與外界的耦合,對舊代碼的更新可以適用。
3.建造者模式
和外觀模式有些類似吧,實現子類的各種不同的組合,也就是在內部實現接口調用順序,而在外界只需調用具體的接口。
4.觀察者模式
一個類A是觀察者類,另一個類B是通知者類,B中調用A的接口,A中有B的通知號,其實耦合度還是很高的,只是有一個事件來到時,B主動調用注冊A注冊在B中的方法,A的方法里會顯示調到B的通知,但其實也可以不調,這個沒什么影響。在網絡協議中就類似于訂閱。缺點在于只能調用固定的方法。
5.事件委托
這個的實現是,通知者類有一個函數指針數組,可以指向任意的觀察者類注冊進來的函數,然后有事件來到時,調用各個接口。實現可以調用不同類的不同函數名稱。但這一點在C++中較難實現,因為類中的函數帶有this指針,查閱網上各位網友的實現,我覺得都違背了迪米特原則,類之間的耦合度太高,所以不如直接采用觀察者模式,加上建造者模式,實現不同通知調用不同類的接口,至少可以使代碼清晰,效率更高,但是代碼量大大提高,而且靈活度不高。
轉載于:https://www.cnblogs.com/leo0000/p/5001642.html
總結
以上是生活随笔為你收集整理的大话设计模式学习心得2的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Effective Java阅读笔记——
- 下一篇: asp.net ajax控件工具集 Au