济南软件开发之软件开发原则

2015-09-16 09:25:29
    重复代码的产生由各种各样的原因,经常看到程序员把几行或一整段代码从这里复制到这里,然后稍加修改,就变成了一份新的代码。这里的原因是程序员可以通过极少的努力就完成代码重用,但是我们可以来看看软件开发原则:
1、存在的理由
    一个软件系统存在的理由就是:为它的用户提供价值。你所有的决定都取决于这一点。在指定一个系统需求,在写下一段系统功能,在决定硬件平台和开发过程之前,问你自己一个问题,“这样做会为系统增加价值吗?“,如果答案是”yes”,那就做。如果是”No”,那就不做。这个原则是其他原则的原则。 
2、能简单就简单
    软件设计不是一个轻描淡写的过程。在做任何一个设计时,你必须考虑很多因素。所有设计应当尽可能简单,但是不要再比这简单了。这样产生的系统才是可以理解和容易维护的。这并不是说很多由意义的特性,因为这种简单性也要被抛弃。事实上,简单是通过许多思考和一次一次的反复修改才达到的。这些努力的汇报就是更容易维护,代码错误更少。
3、保持远见
    清晰的远见是一个软件项目成功的基础。没有这样的远见,项目开发最后就变成天天为一个不好的设计做补丁。概念的完整性是系统设计中最重要的问题。只有当你对系统的体系由一个清晰的感觉,才可能去发现通用的抽象和机制。开发这种通用性最终导致系统更简单,因此更小,更可靠。如果你不断地复制、粘贴、修改代码,最终你将陷入一个大泥潭,你永远不可能对系统有一个清晰的认识。 
4、你制造的,别人会消费
    软件系统不是在真空中使用的。其他人会使用、维护、文档你的系统。这依赖于对你系统的理解。所以,你设计、实现的东西应当能够让别人理解。要记住,你写的代码并非只给计算机看,你要时时记住,代码还要给人看。
    如果到处泛滥似是而非的代码,别人如何能够辨别这些代码的相似和不同,如何去理解这些代码之间具有何种关系。 
5、对将来开放
    一个成功的软件有很长的生命期。你必须能够使得软件能够适应这样和那样的变化。所以,一开始就不要软件设计到死角上去。这个问题,你要考虑到各种各样的可能性,而不光光是图省事。复制,粘贴一下即可。 
6、为重用做好计划 
    软件模式是重用计划的一种。不断重复的代码显然不是这样的计划。 
7、思考 
    在采取任何动作之前首先做一个清晰、完整的考虑,这样才能产生更好的结果。如果你考虑了,但还是产生错误的结果,那么这种努力也是值得的。在你学习或研究类似的问题时,更容易理解和掌握。 
    这些原则告诉我们轻松地复制、粘贴和修改代码不可能产生好的,也就是容易理解、维护、重用的代码。但请不要走极端。 
    一个好的软件系统是各种因素权衡的结果,也就是你如何把握一个度的问题。重复代码产生的另外一个主要原因就是做得太多。如果你去实现你现在认为将来需要的东西,不一定就是你以后真正需要的东西。你处于现在的环境中可能无法理解你要实现东西究竟是什么样子的。你会浪费大量的时间去构造这样不知道是否必须的可能性。同时,当你真正实现的时候就可能产生重复代码。