主要区别在于使用时间:
在开发软件期间,如果无法更改引入适配器的现有接口,则可以使用适配器。
扩展对象模式提供了这样的更改,并使您能够例如扩展已部署的软件。
此外,您发布的文字:
适配器支持适应现有接口。扩展对象模式支持
附加接口。扩展对象和适配器可以在某些情况下协同工作
其中一个对象需要适应扩展接口。
我认为你可以从这个解释扩展对象模式的图表中得到更好的想法。
您可以看到客户端可以
比较适配器时,客户端会坚持使用现有的适配器。
您可以在图表中看到不同的adapters
作为不同的x1 = [-10:1:10];
x2 = [-10:1:10];
y = zeros(1,21);
for i = 1:21
for j=1:21
Y(i,j) = sphere([x1(i) x2(j)]);
end
end
surf(x1,x2,Y);
colormap hsv;
。