delphi桥接模式
生活中的一个例子:就拿汽车在路上行驶的来说。即有小汽车又有公共汽车,它们都不但能在市区中的公路上行驶,也能在高速公路上行驶。这你会发现,对于交通工具(汽车)有不同的类型,然而它们所行驶的环境(路)也在变化,在软件系统中就要适应两个方面的变化?怎样实现才能应对这种变化呢?在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的变化,那么如何应对这种“多维度的变化”?如何利用面向对象的技术来使得该类型能够轻松的沿着多个方向进行变化,而又不引入额外的复杂度?这就要使用Bridge模式。将抽象部分与实现部分分离,使它们都可以独立的变化桥接模式:将抽象化与他的实现化脱耦,使二者可以独立变化抽象化:把事物具有的共性(包括:规定、属性、关系等)从原来有机联系的整体中抽取出来。从而把不同的实体当作同样的实体对待。一个类的实例就是这个类的实现化耦合:两个实体的行为的某种强关联。脱耦:将它们的强关联去掉,即消除耦合。强关联:在编译时期已经确定的无法在运行时期动态改变的关联。弱关联:可以动态的确定并且可以在运行时期动态改变的关联。类的继承关系是强关联,对象的合成关系是弱关联
2.71MB
文件大小:
评论区