软件设计原则
开闭原则
对扩展开发,对修改关闭
单一职责原则
一个类之负责一个功能领域的相应职责
里式替换原则
所有引用基类的地方必须能透明地使用其子类的对象
依赖倒置原则
依赖于抽象,不能依赖于具体实现
接口隔离原则
类之间的依赖关系应该建立在最小的接口上
合成/聚合复用原则
尽量使用合成/聚合,而不是通过继承达到复用的目的
迪米特法则
一个软件实体应该尽可能少的与其他实体发生相互作用
设计模式
软件开发人员在软件开发过程中面临的一般问题的解决方案。
设计模式分类
创建型
单例模式、工厂方法模式、抽象工厂模式、建造者模式、原型模式
结构性
适配器模式、桥接模式、组合模式、装饰模式、外观模式、亨元模式、代理模式
行为性
访问者模式、模板模式、策略模式、状态模式、观察者模式、备忘录模式、中介者模式、迭代器模式、解释器模式、命令模式、责任链模式