設計模式:適合用在具層次性/組合性物件的 -- Composite模式

今天學到一個設計模式。


Composite模式用於「具有層次性或組合性的物件」,如文中提到:
播放清單(playlist)可由「影格(frame)」或「另個播放清單」組成。而不論是播放清單或影格,皆可被播放(play)。

分析如下:
  1. 影格和播放清單都實作了含有播放方法的介面(文中稱為Playable介面)。
  2. 影格可組合放入播放清單中。
  3. 另個播放清單也可組合放入播放清單中。

連結中有程式碼例子,有趣的是,提供了Java和Python版本,可以一起看看XD

留言

熱門文章