如何看待开闭原则(OCP)? 有些人不认同OCP,他们认为我们应该专注于编写简单的代码。 我同意这一点,但是我看不到简单性和OCP是如何不兼容的。
有两个初步要点:
考虑到这些要点,编写简单的代码非常有道理。 当用户要求更改时,简单的代码将使我们能够轻松地应用更改。 而且,如果我们得到用户的频繁反馈的情况下。
我们将知道用户所需的更改,并且我们将能够创建使这些更改的应用变得更加容易的抽象。编写简单的代码,重构和添加抽象,因为它们被证明是必要的。注意YANGNI原则。
下面是您遵守OCP的方式:
OCP的要点是:
OCP是否仍然有意义? 我会说是的。 如果您编写了一个将模块发送文本到设备的抽象模块,那么在不接触模块的情况下添加新类是否很好? 这就是我们实现可扩展模块和可插入行为的方式。
banq注:当需求改变或增加时,有两种直觉:需求改变,就要修改原有代码;需求新增加功能,就要新增代码:
需求有两种变化:新增和修改。
代码有两种变化:新增和修改。
这两种不一定要一一对应,而是根据简单原则和OCP原则去选择代码的新增或修改来满足需求的新增,使用代码的新增或修改来满足需求的修改。
简单原则是当下工作的简单,OCP原则是为了让代码结构简单。这两者都需要考虑。
页面更新:2024-05-01
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号