1、开闭原则
一个软件实体对扩展开放,对修改关闭,即在不修改源代码的情况下改变这个模块的行为
方式:配置文件,DOM解析,反射
2、里氏替换原则
如果能够使用基类对象,那么一个能够使用子类对象,把基类都替换成子类,程序将不会产生任何错误和异常
反之则不成立
3、依赖倒转原则
代码要依赖于抽象类,而不要依赖于具体的类,要针对接口或抽象类进行编程,而不是针对具体的类
即,在程序代码中传递参数时或在组合聚合关系中,尽量引用层次高的抽象层类
4、接口隔离原则
胖接口->瘦接口
5、合成复用原则
尽量使用依赖注入,而不是继承
6、迪米特法则
(不要和陌生人说话)
简单的说,迪米特法则就是指一个软件实体应当可能的少与其他实体发生相互作用。这样,
当一个模块修改时,就会尽量少的影响其他模块
栗子:UserSerivce- - - - - - ->UserDao