《C++代码整洁之道:C++17 可持续软件开发模式实践》 —3.4 避免复制原则(DRY)

网友投稿 661 2022-05-30

3.4 避免复制原则(DRY)

复制和粘贴是一个设计错误。

《C++代码整洁之道:C++17 可持续软件开发模式实践》 —3.4 避免复制原则(DRY)

—David L. Parnas

虽然这个原则是最重要的,但我确信开发人员经常有意或无意地违反这个原则。DRY是“Don抰 repeat yourself! ”的缩写。我们应该尽可能避免复制,因为复制是一个非常不好的行为。该原则也称为“Once And Only Once”(OAOO)原则。

复制是非常危险的,其原因显而易见:当一段代码被修改的时候,也必须相应地修改这段代码的副本,不要抱着不修改副本的期望,可以肯定的是,一定要修改副本。任何复制的代码片段迟早会被忘记,并且,会因为漏改代码的副本而产生bug。

就这样,没什么别的了吗?不是的,还有一些需要我们深入讨论的事情。

在Dave Thomas和Andy Hunt的出色的著作《The Pragmatic Programmer》[Hunt99]中陈述了DRY原则的含义,就是我们要保证“在一个系统内部,任何一个知识点都必须有一个单一的、明确的、权威的陈述。”值得注意的是,Dave和Andy并没有明确地提到代码,他们谈论的是知识点。一个系统的知识所影响的范围远比它的代码更广泛。例如,DRY原则同样也适用于文档、项目、测试计划和系统的配置数据。可以说,DRY原则影响了每一件事情!你可以想象一下,严格遵守这一原则并不像起初看起来那么容易。

C++ c++

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:网站开发进阶(四十九)由JS报“未结束的字符串常量”引发的思考
下一篇:《云计算与虚拟化技术丛书 Service Mesh实战》—3.2.3服务注册:Registrator
相关文章