盘点:6条软件开发黄金定律
极客时间编辑部
讲述:丁婵大小:1.28M时长:02:48
与其他领域一样,软件开发领域也有一些有趣的定律,这些定律包括了一些法则或软件开发大神的名言,而且每个定律背后都有令人惊叹的背景故事。最近,蒂姆·萨默(Tim Sommer)发文盘点了软件开发领域最著名和最常见的 15 条定律,本文摘录了技术人较为熟悉的 6 条定律。
1. 墨菲定律(Murphy’s Law)
该定律指出:如果事情可能出错,它就会出错。
这可能是最著名的定律之一,因为它不仅适用于软件开发。该定律的第一个推论是,那些有效的代码,你可能反而没有写出来;第二个推论是,诅咒是唯一一门所有程序员都能流利说出来的语言。最终结论为电脑会按照你所写的(代码)去做,而不是按照你所想的去做。
2. 布鲁克定律(Brook’s Law)
该定律指出:为已经延期的软件项目增加人手只会让项目延期得更厉害。
如果一个项目出现了延期,只是简单地增加人手很可能会带来灾难性的后果。对编程效率、软件开发方法、技术架构等因素进行评审总是会带来更好的结果。如果没有,那说明霍夫施塔特定律也在起作用。
3. 霍夫施塔特定律(Hofstadter’s Law)
该定律指出:即使你考虑到了霍夫施塔特定律,项目的实际完成时间总是比预期的要长。
这个“定律”是关于准确预估完成复杂任务所需时间的难度。这个定律具有递归性,反映了预估复杂项目的难度,尽管你可能已经做出了最大的努力,而且也知道任务的复杂性。
4. 康威定律(Conway’s Law)
该定律指出:软件的结构反映了开发软件的组织的结构。
很多组织是根据功能性技能来划分团队的,所以会有前端开发团队、后端开发团队和数据库开发团队。简单地说,如果某人想要改变的东西属于其他人,那么他就很难改变这些东西。
5. 帕累托法则(Pareto Principle)或 80/20 法则
该定律指出:对于很多现象,80%的后果源于 20%的原因。
还有人说,公司里 80%的工作是由 20%的员工完成的,问题是你并不清楚是哪 20%员工。
6. 摩尔定律(Moore’s Law)
该定律指出:单位成本的计算机算力每 24 个月翻一番。或者是,集成电路上的晶体管数量大约每 18 个月会增加一倍。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论