设计原则一:找出应用中可能需要变化的部分,把它们封装起来,不要和那些不需要变化的代码混在一起。
(1)好处:代码变化引起不经意后果变少,系统变得更有弹性。
(2)此原则的另一种思考方式:把变化的部分封装起来,以后可以轻易地改动或扩充这此部分,而不会影响不需要变化的其他部分
设计原则二:针对接口编程,而不是针对实现编程。
设计原则三:多用组合,少用继承。
OO基础:抽象、封装、继承、多态。
策略模式——定义算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。