文档章节

Don’t Repeat Yourself

woshixin
 woshixin
发布于 07/17 21:14
字数 321
阅读 2
收藏 0

    在软件工程中,Don’t Repeat Yourself(DRY)是软件开发的原则,旨在减少重复,用抽象代替它,使用数据规范化来避免冗余。

    这个原则在维基百科上是说是由Andy Hunt和Dave Thomas《The Pragmatic Programmer》一书中指出“在一个系统内,每一个点都必须有一个单一的,明确的,权威的表达”,它们应用得相当广泛,包括“数据库模式、测试计划、构建系统,甚至文档”。当DRY原则成功应用时,对系统中任何单个元素的修改都不需要更改其他逻辑上不相关的元素。此外,逻辑上相关的元素都会发生可预测的、一致的变化,从而保持同步。

    但是产品的需求和业务的变化总是千奇百怪的,所以有时候我们会给代码打很多补丁。

    在一个http://stackoverflow.com/questions/1711/what-is-the-single-most-influential-book-every-programmer-should-read 调查的排名中,这本排了第二:

© 著作权归作者所有

共有 人打赏支持
woshixin
粉丝 25
博文 283
码字总数 231968
作品 0
杭州
程序员
私信 提问
how to improve your English hearing

how to improve your English hearing not VOA not VOA special , so many words you don't know . for example here is a VOA special news: The U.S. Secretary of State John Kerry cited......

jeffsui
2015/08/27
0
0
Avoiding duplicate symbol errors during linking by removing classes from static libraries

If you’re using a static library in your project and specifying the flag to ensure files containing Objective-C categories are loaded correctly, you’ll likely experience “dup......

cuibo1123
2014/01/22
0
0
程序员修炼之道-DRY与巧合编程

DRY(Don’t Repeat Yourself)是架构设计中经常用到的一句话,这一原则应用非常广泛,在程序设计中同样会用到,不少代码或许不知不觉中违反了这一定义,如《程序员修 炼之道》一书中就有如下一...

TimYangNet
2010/06/01
0
0
The Cucumber for Java Book读书笔记[二]

Part 5 Expressive Scenarios Background Background可以放置一些共有的描述,重构好帮手。 对于公用的Background,不会被多个scenario共享,每个scenario会独立运行自己的Background,仅仅起...

小紅
2016/03/30
64
0
你必须知道的十大编程格言

本文是从 What are your list of must know programming proverbs ? 这篇文章翻译而来。 我读了Kevin Pang 的一篇可能非常老但非常好的有趣文章:每个程序员都该知道的10大编程格言。 Kevin给...

小卒过河
2011/07/01
3.4K
25

没有更多内容

加载失败,请刷新页面

加载更多

sql 开窗函数

开窗函数:在开窗函数出现之前存在着很多用 SQL 语句很难解决的问题,很多都要通过复杂的相关子查询或者存储过程来完成。为了解决这些问题,在 2003 年 ISO SQL 标准加入了开窗函数,开窗函数...

hblt-j
10分钟前
0
0
使用Vue动态生成form表单的实例代码

具有数据收集、校验和提交功能的表单生成器,包含复选框、单选框、输入框、下拉选择框等元素以及,省市区三级联动,时间选择,日期选择,颜色选择,文件/图片上传功能,支持事件扩展。 欢迎大家s...

嫣然丫丫丫
18分钟前
0
0
NEO区块链-DAPP开发直通车-第零篇

什么是DAPP DAPP 是以太坊发明的词汇 Decentralized Application. 目前基于区块链技术开发的应用程序广泛的接受使用了这一名称。 NEL将为开发DAPP提供全面的服务 什么是NEL NEL是 “NewEcon...

NEO-FANS
22分钟前
1
0
可视化软件VisIt在Ubuntu18.04上的安装

可视化软件VisIt在Ubuntu18.04上的安装 参考文档及使用说明 1.下载 在官网下载页面下载合适版本的安装文件,Ubuntu有专用的 https://wci.llnl.gov/simulation/computer-codes/visit/executa...

佚文
27分钟前
1
0
selenium之表格的定位

真的勇士, 敢于直面惨淡的warning、 敢于正视淋漓的error 目录 被测试网页的HTML代码 1.遍历表格所有单元格 2.定位表格中的某个元素 3.定位表格中的子元素 总结 浏览器网页常常会包含各类表...

程序猿拿Q
42分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部