什么是重用/发布等效原则,为什么它很重要?
2 回答
重用/发布等效原则 (REP) 说:
重用单元是释放单元。有效的重用需要跟踪来自变更控制系统的发布。包是重用和发布的有效单元。
重用单位就是释放单位
不应通过从一个类复制代码并将其粘贴到另一个类来重用代码。如果原作者修复了代码中的任何错误,或添加了任何功能,您将不会自动获得收益。您必须找出更改的内容,然后更改您的副本。你的代码和原来的代码会逐渐发散。
相反,应该通过在代码中包含已发布的库来重用代码。原作者保留对其进行维护的责任;您甚至不需要查看源代码。
有效的重用需要跟踪变更控制系统的发布
库的作者需要用某种编号或名称来标识版本。这允许库的用户识别不同的版本。这需要使用某种发布跟踪系统。
包是重用和发布的有效单元
可以使用一个类作为重用和发布的单元,但是在一个典型的应用程序中有这么多的类,发布跟踪系统跟踪它们会很麻烦。需要一个更大规模的实体,而该软件包很好地满足了这一需求。
另请参见 Robert Martin 关于粒度的文章。
来自罗伯特马丁的清洁建筑。
重用/发布等效原则 (REP) 是一个看似显而易见的原则,至少事后看来是这样。想要重用软件组件的人不能也不会这样做,除非这些组件通过发布过程进行跟踪并获得发布号。
这不仅仅是因为没有版本号,就无法确保所有重用的组件相互兼容。相反,它也反映了这样一个事实,即软件开发人员需要知道新版本何时到来,以及这些新版本将带来哪些变化。
开发人员收到有关新版本的警报并根据该版本中所做的更改决定继续使用旧版本的情况并不少见。因此,发布过程必须生成适当的通知和发布文档,以便用户可以就何时以及是否集成新版本做出明智的决定。