如果User和Investigation之间存在结构性semantic relationship,则需要在两者之间建立关联,例如,如果用户分配了调查,如果调查由某些用户所有,或者如果用户有一个要浏览的关联列表。 如果存在暂时的关系,例如如果用户可以浏览所有调查,并不时决定分享一项调查,而不留下任何痕迹,就没有必要建立联系。 现在,如果Investigation具有share操作,则User可以简单地使用该操作,无论是否与调查相关联。 但是,如果另一个类需要告诉User来共享一个调查(例如,用户接口的类)。在这种情况下,您可能会对User的share操作感兴趣。但是如果您是这样开始的,那么您需要看一下principle of least knowledge,因为这样的设计可能会导致许多隐藏的耦合,这使得软件在未来的发展中很难维护。
1条答案
按热度按时间axr492tv1#
如果
User
和Investigation
之间存在结构性semantic relationship,则需要在两者之间建立关联,例如,如果用户分配了调查,如果调查由某些用户所有,或者如果用户有一个要浏览的关联列表。如果存在暂时的关系,例如如果用户可以浏览所有调查,并不时决定分享一项调查,而不留下任何痕迹,就没有必要建立联系。
现在,如果
Investigation
具有share
操作,则User
可以简单地使用该操作,无论是否与调查相关联。但是,如果另一个类需要告诉
User
来共享一个调查(例如,用户接口的类)。在这种情况下,您可能会对User
的share
操作感兴趣。但是如果您是这样开始的,那么您需要看一下principle of least knowledge,因为这样的设计可能会导致许多隐藏的耦合,这使得软件在未来的发展中很难维护。