我们团队的另一个人为他的Web框架提供了一个作为jar库的库。我们称这个框架为“我的朋友的框架”。
有一个特定的类是我需要从他的框架中获取的。该类公开的属性中有一半是我自己应用程序所需要的,而另一半则不需要。要检索此类的属性,您需要进行一些字符串操作。由于我将在此类之上开发自己的框架,因此我希望尽可能地解耦依赖关系。也许将来我的另一个朋友会开发出更好的框架。
因此,我为该类生成了一个外观类。我的框架通过我的外观类访问属性。如果“我的朋友的框架”发生变化,我只需更改一个外观类即可,其余内容保持不变。此外,字符串操作在外观类内部完成。此外观类仅公开所需属性。因此,我的框架只需像普通的getter/setter一样访问属性。
然而,我和这个人有过争论。他强迫我直接使用他的类,因为首先他永远不会更改他的类的实现方式。因此,他告诉我编写外观类没有任何价值。但我不同意。
我错了吗?虽然我相信自己是对的。
有一个特定的类是我需要从他的框架中获取的。该类公开的属性中有一半是我自己应用程序所需要的,而另一半则不需要。要检索此类的属性,您需要进行一些字符串操作。由于我将在此类之上开发自己的框架,因此我希望尽可能地解耦依赖关系。也许将来我的另一个朋友会开发出更好的框架。
因此,我为该类生成了一个外观类。我的框架通过我的外观类访问属性。如果“我的朋友的框架”发生变化,我只需更改一个外观类即可,其余内容保持不变。此外,字符串操作在外观类内部完成。此外观类仅公开所需属性。因此,我的框架只需像普通的getter/setter一样访问属性。
然而,我和这个人有过争论。他强迫我直接使用他的类,因为首先他永远不会更改他的类的实现方式。因此,他告诉我编写外观类没有任何价值。但我不同意。
我错了吗?虽然我相信自己是对的。