又到了開心刺激的時候了, 來把dota 享元模式(Flyweight Pattern) 定義: 它是一種軟體設計模式. 它使用共用物件, 用來儘可能減少記憶體使用量以及分享資訊給儘可能多的相似物件; 它適合用於當大量物件只是重覆因而導致無法令人接受的使用大量記憶體. 通常物件中的部分準櫃臺是可以分享. ...
享元模式(Flyweight Pattern) 定義: 它是一種軟體設計模式. 它使用共用物件, 用來儘可能減少記憶體使用量以及分享資訊給儘可能多的相似物件; 它適合用於當大量物件只是重覆因而導致無法令人接受的使用大量記憶體. 通常物件中的部分準櫃臺是可以分享. 常見做法是它們放在外部數據結構, 當需要使用時再將他們傳遞非享元.
享元模式解決的問題
- 重覆得到有效利用
- 也就是節省記憶體開銷
享元模式的組合使用
- 享元模式與單例模式的目的很相似, 都是有節約系統資源
- 出發點不同:
- 單例模式是保證對象唯一, 同時節省了資源
- 享元模式共用物件, 節省記憶體
- 所以上面的UML 是兩者的組合拳