使用BDD时遵循开放/封闭原则有什么好处?

开放/封闭原则似乎是关于防止对象或方法中的回归。鉴于您的代码被测试覆盖,因为您正在练习BDD,这似乎是一个多余的要求。此外,它似乎通过要求API级别而不是语言级别的可扩展性来引入额外的复杂性。     
已邀请:
绝对有好处。实际上,两个主体(BDD和Open / Closed)是为不同目的而设计的。 BDD旨在引领开发过程,这就是感受它的好处(缩短时间表,制作更高质量的代码等)。打开/关闭旨在在开发过程中完成,但有助于维护。 BDD的好处很容易掌握。初始开发的时间越短意味着整个项目的成本越低,对吧?错误。根据60/60规则,项目成本的60%来自维护(并且该成本的60%来自部署后的需求变更)。因此,虽然在初始开发阶段节省资金是有益的,但在维护期间可以节省更多。 这就是开放/封闭本金将获得回报的地方。通过遵循该原则,您将节省大量维护时间(因为您不需要跟踪损坏的单元测试,因为您更改了方法的功能)。 开放/封闭主体并不是要防止回归,因为它阻止了几乎无法跟上的API变化。如果你注意到,好的API永远不会改变。他们可能会延长。零件可能已被弃用。但你永远不会看到
setFoo(string bar)
改为
setFoo(int bar)
。这就是打开/关闭是为了防止......     

要回复问题请先登录注册