10
可以/应该将单一责任原则应用于新法规吗?
将该原理定义为具有更改理由的模块。我的问题是,在代码实际开始更改之前,这些更改原因肯定是未知的吗?几乎每一段代码有许多原因,它可能会可能改变,但肯定尝试预见所有的这些设计和代码考虑到这一点最终会很差代码。仅在开始请求更改代码时才真正开始应用SRP,这不是一个更好的主意吗?更具体地说,当一段代码由于多个原因而多次更改时,因此证明它具有多个更改原因。尝试猜测更改的原因听起来很反敏捷。 一个示例是一段打印文档的代码。提出了将其更改为打印为PDF的请求,然后再次请求将其更改为对文档应用某些不同的格式。在这一点上,您有证据证明有多个原因需要更改(并且违反了SRP),并且应该进行适当的重构。