设计原则
1.单一积责原则:类的职责要单一,不能将太多的职责放在一个类中
2.开闭原则:软件实体对扩展是开放的,但对修改是关闭的,即在不修改一个软件实体的基础上去扩其功能
3.里氏代换原则:在软件系统中,一个可以接受基类对象的地方必然可以接受一个子类对象
4.依赖倒转原则:要针对抽象层编程,而不要针对具体类编程
5.接口隔离原则:使用多个专门的接口来取代一个统一的接口
6.合成复用原则:在系统中应该尽量多使用组合和聚合关联关系,尽量少使用基至不使用继承关系
7.迪米特法则:一个软件实体对其他实体的引用越少越好,或者说如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用,而是通过引入一个第三者发生间接交互。
创建型模式
将对象的创建和使用分离
简单工厂模式(不属于GoF设计模式)
定义:根据传入的参数即可返回所需的对象,而不需要知道具体类的类名。
工厂方法模式
定义:定义一个用于创建对象的接口,让子类决定将哪一个类实例化。
抽象工厂模式
定义: 提供一个创建一系列相关或相互依赖对象的接口,而无须指定他们具体的类
建造者模式
定义:将一个复杂对象的构建与它的表示分离。
原型模式
定义:用原型实例指定创建对象的种类,并且通过复制这个原型来创建新的对象
单例模式
定义:保证一个类仅有一个实例,并提供一个访问它的全局访问点。