[转]关于软件开发的21条“规律”

这些规律两年前在一论坛上看到过,这几天在一linux社区上重现,发现体会不一样了,发现我认同的多了。
全文如下:
每个有经验的程序员都知道,在软件开发中存在着一些规律。但是,破坏了这些规律并不会得到惩罚,相反会有些许奖励。
1. 任何一个程序一旦发布就意味着它已经过时了。
2. 让需求根据程序调整往往要比让程序根据需求调整来得容易。
3. 如果一个程序是有用的,那它必将被改变。
4. 如果一个程序是无用的,那它必须被注释。
5. 在任何一个程序里只有10%的代码会被执行。
6. 软件会无限扩张以占用所有的系统资源。
7. 任何有价值的程序都会包含至少一个错误。
8. 一个演示版的程序完美无瑕的几率和关注它的人数成反比,最终要花费的金钱的数量是原数量的平方。
9. 一个程序的致命错误要到其发布至少半年后才会被发现。
10. 不可检测的错误是无穷无尽的,并以各种形式存在;相反,可检测的错误从理论上讲是有限的。
11. 随着时间的推移,修正某个错误所需花费的精力会成指数级增加。
12. 程序的复杂度会一直增长,直到超出维护它的程序员的能力为止。
13. 一段你自己写的代码如果几个月不曾看过,那很有可能其他人也会写出相同的代码。
14. 在每个小程序里都会有一大段代码想要破壳而出。
15. 你越快开始编写代码,就会需要越长的时间。
16. 一个项目如果没有精心策划,那将需要比预期多出两倍的时间来完成它;相反的,如果项目是精心策划过的,就只需要多出一倍的时间。
17. 向一个落后于进度的项目添加程序员只会让项目更加落后于进度。
18. 一个程序的完成程度总在90%到95%之间。
19. 如果你让一团糟糕的代码自动化,那你就会得到一团自动化的糟糕的代码。
20. 建立一个连傻瓜都会使用的程序,而只有一个傻瓜才想要去使用它。
21. 用户直到他们使用了一个程序之后才知道他们究竟想要的是什么。



posted on 2008-09-05 07:47 justBlue 阅读(72) 评论(0)  编辑  收藏 所属分类: 思想归纳


只有注册用户登录后才能发表评论。


网站导航:
 
<2024年11月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

导航

统计

常用链接

留言簿(1)

随笔档案

文章分类

文章档案

搜索

最新评论