假如整个Windows都是一个人写的,那他需要多久能写完?
这个问题是我们在Quora上闲逛时偶然遇到的,觉得非常有意思,分享给大家。尽管Windows有很多不完美的地方,但是它依旧是世界上使用人数最多(超过80%),最稳定的操作系统。本文的参考链接你可以在文章底部看到。
假如,有一位代码天才,他有一个梦想,就是靠自己的双手写出一个Windows 10系统。求:他需要花多久才能写完?
其他的先不管,我们首先来看看Win10的代码量有多少。据估计,Win10里至少有2700万-5000万行代码。
那写一行代码需要多长时间呢?我们要先假设这位“编程天才”掌握了所有必需的语言,技术,库,协议,标准,向后兼容性需求等等。如果设码代码速度为每小时30行,那么写出2700万-5000万行代码就需要90万-160万小时。当然,这也是在产出的代码里没有bug的前提下计算出的数字。
但是没有bug是不可能的,如果把处理bug的时间算进去的话(据估计,每1000行代码里会出现15-20个Bug,也就是说在你写的Win10代码里,会出现 40万-100万个Bug),就算是天才,你也需要13,500-33,333小时的Debug时间。正常情况下,我们会反复修正直到bug数减少到0。但这里我们只迭代一次就行了。所以,写完Windows的总时间在913,500-1,699,999小时之间,换成年的话,就是104.2年-193.93年。
对了,上面的时间都没有算进休息/睡觉/吃饭消耗的时间。如果我们严格按照每日八小时工作制来算,那么这个数字就会上升到312.6年-581.8年。其实,我们还忽略了编译时间和机器故障。
如果这位天才从出生的时候就被上帝赐予了知识、沟通技能和控制身体的能力,可以立刻开始码代码,他只需要活到600岁就可以写出Windows了。
但是开发Windows不仅仅需要写代码。
在微软工作的Noam Ben-Ami表示,Windows 10拥有大约40-45个Feature团队,每个团队里有大约32个工程师(这还不包括测试者,产品经理等等)。它从大约2013年开始开发,到2015年7月末正式上线,开发时间在两年半左右。假设先前的代码库重写了50%,这就意味着我们还需要另外两年半来写之前的代码。那么我们就可以进行计算:5年*32名工程师*40个团队,相当于6400年的开发时间。这还不包括系统测试,构建实验室,用户界面开发,全球化/本土化工作等等。
所以,这个问题就像在问:我是一个熟练的工程师,我要花多久才能建好长城?
本文转载自【BitTiger】
参考链接:
https://www.quora.com/If-I-were-a-super-skilled-coder-how-long-would-it-take-me-to-write-the-Windows-10-operating-system
https://www.quora.com/How-many-lines-of-code-does-Windows-10-contain
https://www.quora.com/How-many-lines-of-code-do-professional-programmers-write-per-hour
https://www.mayerdan.com/ruby/2012/11/11/bugs-per-line-of-code-ratio
公众号内回复“1”带你进粉丝群
关注公众号:拾黑(shiheibook)了解更多
[广告]赞助链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/
随时掌握互联网精彩
- 1 老百姓的事情是最重要的事情 7923251
- 2 多省否认花一万亿推平黄土高原 7901168
- 3 央视蛇年春晚分会场确定 7859782
- 4 数说2024中国经济脉动 7709393
- 5 13.2万瓶“特供酒”销毁 7633694
- 6 中国籍两兄弟在日本偷走3200颗包菜 7518615
- 7 近9000亿美元!拜登签了 7452377
- 8 网红羊毛月被禁止关注 7345840
- 9 充绒量仅3克 波司登客服回应 7229017
- 10 景区回应李现在虎跳峡举国旗 7135825