亲宝软件园·资讯

展开

【程序员修炼之道】-【第二章】-【注重实效的途径】-【重复的危害】

经十东路程序员 人气:0

  给予计算机两项自相矛盾的知识,在星际迷航中舰长喜欢用这种方式是人工智能生命失效,遗憾的是,这种原则同样也能使你的代码失效。。。

  作为程序员,我们收集、组织、维护和利用知识,在规范中记载知识,在代码中表现知识。遗憾的是知识并不稳定,它变化很快,你对需求的理解可能随着与客户的会谈而发生变化、财务制度的变化使你不得不遵循并作出改变等等,所有这些不稳定都意味着我们要花很大一部分时间在维护上,重新组织和表达我们系统中的知识。

  很多人都认为维护是在应用发布时开始的,维护意味着修正BUG或者增加特性,我们认为这些人错了,程序员需要持续不断的维护,我们的理解持续变化,当我们设计或者编码时,出现了新的需求、应用场景等,不管原因是什么,维护都不是时有时无的活动,而是整个开发过程中的例行事物。

  所以,维护是伴随整个开发过程中的,设想如果在代码中存在两处或者多处相同代码,你改变一处,你必须记得改变其他各处。这不是你能否记住的问题,而是你何时能忘记的问题。

  可靠的开发软件、并让我们的开发更容易理解和维护的唯一途径是遵循DRP原则:Don't repeat Yourself!这是注重实效的程序员的工具箱里最重要的工具之一。

  系统中的每一项知识都必须具有单一、无歧义、权威的标示。

 

  重复是怎么发生的:

  1、强加的重复

  2、无意的重复:多个api触发相同字段实现同一功能

  3、无耐性的重复:父类的继承修改直接复制代码,觉得这样更容易

  4、开发者之间的重复:几个人实现了同一功能

加载全部内容

相关教程
猜你喜欢
用户评论