機制與策略

Andy Niu發表於2015-09-20

1、透過現象看本質,機制與策略到底是什麼?為什麼要將機制與策略分離?
2、反映在系統設計上,機制是目標功能,策略是實現方法,也可以認為是介面與實現。
3、反映在管理上,領導負責機制,員工負責策略,也就是說,領導決定做什麼,怎麼做是員工的事情。
4、為什麼要將機制與策略分離?
  假如不分離,會出現什麼問題?考慮下面的場景,要完成排序的功能,如果介面和實現捆綁在一起,並使用氣泡排序完成。
  那麼問題來了,我想換一種排序演算法,比如快速排序,介面和實現都要替換。怎麼解決這個問題?
  也就是機制與策略分離,提供一個排序介面,繼承介面,提供不同的實現,這也就是策略模式。
  Context關聯一個抽象的策略(也就是介面),用不同的具體策略初始化抽象策略,就能呼叫具體策略的處理流程。

相關文章