随笔分类 -  设计原则

摘要:定义: 迪米特法则(Law of Demeter,LoD)也称为最少知识原则(Least Knowledge Principle,LKP)。 一个对象应该对其他对象有最少的了解。通俗地讲,一个类应该对自己需要耦合或调用的类知道得最少,你(被耦合或调用的类)的内部是如何复杂都和我没关系,那是你的事情, 阅读全文
posted @ 2017-12-26 09:26 下路派出所 阅读(184) 评论(0) 推荐(0)
摘要:接口隔离有两种定义: Clients should not be forced to depend upon interfaces that they don’t use. 客户端不应该依赖它不需要的接口 那依赖什么呢?依赖它需要的接口,客户端需要什么接口就提供什么接口,把不需要的接口剔除,那就需要 阅读全文
posted @ 2017-12-26 09:21 下路派出所 阅读(367) 评论(0) 推荐(0)
摘要:定义:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。 问题由来:类A直接依赖类B,假如要将类A改为依赖类C,则必须通过修改类A的代码来达成。这种场景下,类A一般是高层模块,负责复杂的业务逻辑;类B和类C是低层模块,负责基本的原子操作;假如修改类A,会给程序带 阅读全文
posted @ 2017-09-14 20:14 下路派出所 阅读(189) 评论(0) 推荐(0)
摘要:通俗的定义:子类可以扩展父类的功能,但不能改变父类原有的功能。 覆盖或实现父类方法时可以放大输入参数 在一个继承中,如果子类传入的参数小于或等于父类参数时,那么此方法在执行时,会永远调用父类的方法,而不会调用子类中的方法,因为这是重载,父类中的方法还存在,没有被替换掉。 如果大于父类传入参数,会使得 阅读全文
posted @ 2017-09-14 17:47 下路派出所 阅读(556) 评论(0) 推荐(0)
摘要:定义:不要存在多于一个导致类变或接口更的原因。通俗的说,即一个类或一个接口只负责一项职责。 单一职责原则好处 降低类的复杂性 每个类实现单一职责,并且单一职责都有清楚明确的定义,复杂性当然降低。 提高可读性 类的复杂性降低了,当然提高了可读性了。 提高可维护性 类的复杂性降低,可读性好,当然好维护。 阅读全文
posted @ 2017-09-14 15:41 下路派出所 阅读(385) 评论(0) 推荐(0)