注意:没有作任何代码 demon,没必要开发中实战用过才能懂简单的 demon 没有意义,换言之概要更加方便记忆和使用
设计原则
- 开闭(Open Closed Principle,OCP): 对拓展开放、对修改关闭
- 单一职责(Single Responsibility Principle,SRP):保证设计类、接口、方法时做到 功能单一,权责明确
- 里式替换(Liskov Substitution Principle,LSP):所有引用基类的地方必须能透明地使用其子类的对象, 设计程序的时候尽可能使用基类进行对象的定义及引用,具体运行时再决定基类对应的具体子类型
- 依赖倒置(Interface Segregation Principle,ISP):程序要依赖于抽象接口,不要依赖于具体实现。简单的说就是要求对抽象进行编程,不要对实现进行编程
- 接口隔离(Interface Segregation Principle, ISP):建立单一的接口, 不要建立臃肿庞大的接口。也就是接口尽量细化,同时接口中的方法尽量少,保持接口纯洁性
- 迪米特法则(Law of Demeter, LOD): 一个软件实体应当尽可能少地与其它实体发生相互作用,类定义时尽量内敛,少用public权限修饰符,尽量使用private、protected
- 合成复用:过将已有的对象纳入新对象中,作为新对象的成员对象来实现的,新对象可以调己有对象的功能,从而达到复用。 原则是尽量首先使用合成/聚合的方式,而不是使用继承
设计模式
type | name |
---|---|
创建型 | 单例模式(Singleton Design Pattern) |
创建型 | 工厂模式(Factory Design Pattern) |
创建型 | 建造者模式(Builder Design Pattern) |
创建型 | 原型模式(Prototype Design Pattern) |
结构型 | 代理模式(Proxy Design Pattern) |
结构型 | 桥接模式(Bridge Design Pattern) |
结构型 | 装饰器模式(Decorator Design Pattern) |
结构型 | 适配器模式(Bridge Design Pattern) |
结构型 | 门面模式(Facade Design Pattern) |
结构型 | 组合模式(Composite Design Pattern) |
结构型 | 享元模式(Flyweight Design Pattern) |
行为型 | 观察者模式(Observer Design Pattern) |
行为型 | 模版模式(Template Design Pattern) |
行为型 | 策略模式(Strategy Design Pattern) |
行为型 | 职责链模式(Chain Of Responsibility Design Pattern) |
行为型 | 状态模式(State Design Pattern) |
行为型 | 迭代器模式(Iterator Design Pattern) |
行为型 | 访问者模式(Visitor Design Pattern) |
行为型 | 备忘录模式(Memento Design Pattern) |
行为型 | 命令模式(Command Design Pattern) |
行为型 | 解释器模式(Interpreter Design Pattern) |
行为型 | 中介模式(Mediator Design Pattern) |