面向对象基本原则:
1,面向对象的四个基本概念:抽象,封装,继承,多态
2,继承的好处是实现代码的复用
3,软件开发后花费的时间远大于开发前的时间,所以应致力于提供可复用性和可扩展性
4,多用组合,少用继承。组合的方式使得类更容易分割,使代码更富有弹性,复用性
5,oo设计必须具备可扩展,可复用,可维护三个特性
设计模式七大基本原则:
1,开放-关闭原则:类应该对扩展开放,对修改关闭。在不修改类的基础上,实现新的行为
2,依赖倒置原则:要依赖抽象,不要依赖具体类;针对接口编程,而不是实现编程。所以声明一个变量要把它声明为超类型(接口或抽象类),而不是实现类或者具体类
3,单一责任原则:保证每一个类只有一个责任,一个类只有一个引起变化的原因,多一个责任就多一个改变的区域
4,接口隔离原则:建立单一的接口,不要建立庞大臃肿的接口,尽量细化接口。这可能会引起接口的数量过多,所以要根据情况而定,保持适中
5,最少知道原则:只与最直接的朋友通讯,一个类对自己依赖的类知道的越少越好。低耦合,高内聚。成员变量,方法参数,方法返回值为直接朋友,陌生的类最好不要以局部变量出现在方法里
6,组合聚合复用原则:少用继承,多用组合。继承的父类如果发生改变子类也发生改变,聚合是白箱复用,组合是黑箱复用。
7,里氏代换原则:子类可以替换父类。