重构二--在对象之间搬移特性(Hide Delegate)(2)--动机

重构二--在对象之间搬移特性(Hide Delegate)(2)--动机
动机(Motivation)
如果某个客户调用了[建立了server object(服务对象)的某个值域基础之上]的函数,那么客户就必须知晓这一委托对象(delegate object)。万一委托关系发生变化,客户也得相应变化。你可以在server端放置一个简单的委托函数(delegating method),将委托关系隐藏起来,从而去除这种依存性。这么一来即便将来发生关系上的变化,变化将被限制在server中,不会涉及客户。

Delegate.png

你可能感兴趣的:(重构二--在对象之间搬移特性(Hide Delegate)(2)--动机)