Loading...
链接https://www.processon.com/view/link/5f94236c5653bb06ef148900
基本类之间的关系1. 关联关系通常将一个类作为另一个类的成员变量1.1 单向关联1.2 双向关联1.3 自关联1.4 关联的拓展分类1.4.1 聚合关系在聚合关系中,成员对象是整体对象的一部分,但是成员对象可以脱离整体对象独立存在,也即,当整体对象被回收后,该成员对象依旧可以访问。在代码实现聚合关系时,通常将成员对象作为构造方法、Settter方法或业务方法的参数注入到整体对象中。1.4.2...
整个面对对象编程,究其核心是分层理论。即任何负责的事物都是由一个又一个简单构成,通过将多个简单合成成一个复杂,并向上提供接口。然后构成更复杂的事物。同样是分层。通过继承达到的分层是金字塔状的分层。越往下继承(层数越多),新继承的类就会越多;而与之相对的关联达到的分层。则像千层饼一样,每一层都差不多大。关联的耦合比继承要低得多。继承是一件确定的关系。继承了哪个父类就是哪个(而且一般为单继承)。...
一切源于工程实践。防呆设计/权限分级设计尽可能消除导致故障的源头。从根源解决问题。问题的根源有很大一部分是由于人员的误操作。当用户的控制权越来越多时,用户就可能犯错,最终酿成事故。面对这个问题,在工程实践中通常会考虑采用防呆设计(把用户当傻瓜)。即不给用户有犯错的机会,减少其控制权,并且对其控制权有更加严苛的要求,这时候,就减少了事故的发生。如果削减了用户的控制权,用户处理事务的灵活性又会收...
概述根据单一职责原则,在一个软件中将一个系统划分为若干个子系统有利于降低整个系统的复杂性,一个常见的设计目标是使客户类与子系统之间的通信和相互依赖关系达到最小,而达到该目标的方法之一就是引入一个外观角色(Facade),它为子系统的访问提供了一个简单而单一的入口,外观模式也是迪米特法则的体现,通过引入一个新的外观角色可以降低原有系统的复杂度,同时降低客户类与子系统类的耦合度。外观模式要求一个...