机制决定如何做(how),而策略决定做什么(what)。
策略与机制分离对于灵活性来说很重要。策略可能会随着位置或时间的改变而改变。在最坏的情况下,策略的每一次改变都需要底层机制的改变。比较好的情况是有一个足够灵活的通用机制,它能够在一系列策略中发挥作用,策略的改变仅需要重新定义系统的某些参数。例如,考虑一种机制,给予某些类型程序的优先级高于其他类型程序,如果该机制与策略正确分离,则可以使用它来支持一个策略决策,即给予I/O密集型程序优先级应高于CPU密集型程序,也可以用于支持相反的策略。
匿名回答于2021-01-03 17:30:22