软件研发设计相关定律

一、墨菲定律(Murphy’s Law)
如果事情可能出错,它就会出错(代码会按照你写的去做,但不是按照你想的去做)。

二、布鲁克定律(Brook’s Law)
向一个延期的项目增加人手只会让它延期得更加厉害。

三、霍夫施塔特定律(Hofstadter’s Law)
事情总是要花费比你预想更长的时间,即使你把霍夫施塔特定律也考虑在内。

四、康威定律(Conway’s Law)
设计系统的架构受制于产生这些设计的组织的沟通结构(产品必然是其组织沟通结构的缩影)。

五、波斯托定律(Postel’s Law)
保守输出,自由输入(接受观点时持开放态度,在输出观点时持保守态度)。

六、帕累托法则(Pareto Principle)
对于很多现象,80%的后果源于 20%的原因(80%的 bug 来自 20%的代码)。

七、彼得法则(The Peter Principle)
在一个等级制度中,每个员工都倾向于晋升到他无法胜任的职位。

八、基尔霍夫法则(Kerchkhoff’s Principle)
在密码学中系统应该是安全的,即使系统的所有东西都是公开的,除了一小部分信息【秘钥】。

九、莱纳斯定律(Linus’s Law)
若是有足够多的眼睛,全部的 bug 都将无所遁形。

十、摩尔定律(Moore’s Law)
单位成本的计算机算力每24个月翻一番(集成电路上的晶体管数量大约每18个月会增加一倍)。

十一、沃斯定律(Wirth’s Law)
软件比硬件更容易变慢。

十二、九九法则(Ninety-Ninety Rule
前90%的代码占用了10%的时间,其余的10%代码占用了剩下的90%时间。

十三、克努特优化法则(Knuth’s Optimization Principle)
过早/不成熟的优化是万恶之源(先写代码,然后找出瓶颈,最后才修复!)。

十四、诺维格定律(Norvig’s Law)
当公司的市场占有率>50% ,市场占有率无法再翻番了。

你可能感兴趣的:(Java,java)