1.设计模式的6/7大原则
(1)单一职责原则
(2)接口隔离原则
(3)依赖倒转原则
(4)里氏替换原则
(5)ocp[开闭]原则
(6)迪米特法则
(7)合成复用原则
- 单一职责: 对于类来说,即一个类应该只负责一项职责
单一职责原则:
(1)降低类的复杂度
(2)提高类的可读性,可维护性
(3)降低变更引起的风险
(4)通常情况下,我们应该严格遵守单一职责原则,只有逻辑足够简单,才可以在代码级别违反单一原则,只有类中的方法足够少,可以在方法级别违反单一原则(一个方法只做一件事)
3.根据他们的用途,设计模式可分为:
创建型,结构型,行为型
3.1创建型模式(5种):提供创建对象的机制,提升已有代码的灵活性和可复用性。
常见的有:单例模式,工厂模式(工厂方法和抽象工厂),建造者模式。
不常用:原型模式。
3.2结构性模式(7种):介绍如何将对象和类组装成较大的结构,并同时保持结构的灵活和高效
常见的有:代理模式,桥接模式,装饰者模式,适配器模式
不常见的有:门面模式,组合模式,享元模式
3.3行为模式(11种): 负责对象间的高效沟通和职责传递委派
常见的有:观察者模式,模板模式,策略模式,职责链模式,迭代器模式,状态模式。
不常见的有:访问者模式,备忘录模式,命令模式,解释器模式,中介模式。
如何判断一个类的职责是否单一?
(1)类中的代码行数,函数或者属性是否过多?
(2)类种依赖的其他类是否过多?
(3)私有方法过多
(4)类中的大量方法总是操作类中的几个属性