五、接口隔离原则(ISP)

(1) 一个类对另外一个类的依赖是建立在小的接口上。
(2) 使用多个专门的接口比使用单一的总接口要好.根据客户需要的不同,而为不同的客户端提供不同的服务是一种应当得到鼓励的做法.像"看人下菜碟"一样,要看客人是谁,再提供不同档次的饭菜.
(3) 胖接口会导致他们的客户程序之间产生不正常的并且有害的耦合关系.当一个客户程序要求该胖接口进行一个改动时,会影响到所有其他的客户程序.因此客户程序应该仅仅依赖他们实际需要调用的方法.
   
六、合成/聚合复用原则(Composite/Aggregate Reuse Principle,CARP)

在一个新的对象里面使用一些已有的对象,使之成为新对象的一部分;新的对象通过这些向对象的委派达到复用已有功能的目的.这个设计原则有另一个简短的表述:要尽量使用合成/聚合,尽量不要使用继承.

七、迪米特法则(Law of Demeter LoD)

又叫做少只是原则(Least Knowledge Principle,LKP),是说,一个对象应当对其他对象有尽可能少的了了解.
迪米特法则初是用来作为面向对象的系统设计风格的一种法则,与1987年秋天由Ian Holland在美国东北大学为一个叫做迪米特(Demeter)的项目设计提出的,因此叫做迪米特法则[LIEB89][LIEB86].这条法则实际上是很多系统,比如火星登陆软件系统,木星的欧罗巴卫星轨道飞船的软件系统的指导设计原则.
没有任何一个其他的OO设计原则象迪米特法则这样有如此之多的表述方式,如下几种:
(1) 只与你直接的朋友们通信(Only talk to your immediate friends)
(2) 不要跟"陌生人"说话(Don't talk to strangers)
(3) 每一个软件单位对其他的单位都只有少的只是,而且局限于那些本单位密切相关的软件单位.
是说,如果两个类不必彼此直接通信,那么这两个类不应当发生直接的相互作用,如果其中的一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用。