登陆注册
9266100000012

第12章 软件臃肿的原因

前几天方室网志写了一篇文章这越来越臃肿的软件,我看完后才懂有这么一个叫做“安迪比尔”的定律,它描述了软件商跟硬件商的关系。

定律内容简单说,就是软件与硬件是互相促进的关系。

硬件的性能越来越强,软件的胃口也越来越大。

实话说,当今智能手机的性能早已经超越了七八十年代的老电脑了,可那时候的计算机能够支撑载人登月的任务,而如今的掌机只能用来玩玩小游戏运行小软件,是什么造成了这种奇怪的局面?

不是硬件真的不强,而是软件体积的确太大,这样解释下来真的很符合人们的直觉!

我在文后评论说这“安迪比尔定律”不对,现在仔细想想其实它是说对了一半,软件的确是越来越臃肿,但相应的功能也越来越多,虽然很多功能可能用不着,但作为一个要符合七八亿人胃口的东西,到如今水平也的确不易,但这功能什么的都是次要的,我了解到一些观点,认为背后的真相应该是:当今很多软件充满了垃圾的代码,这并非有意为之,只是一种无奈的现象。

首先,大家猜猜一个完整独立的博客程序代码可以做多么小?wordpress3.8版本解压后占用空间是17.2M。

而我了解到的王志勇的博客采用的是他自己开发的,以精简高效为主要目标的Arsue Blog,主程序在20K以内,核心程序在5K以内,Blog首页的主程序在1K左右。

注意,两者体积单位是不同的,一个M级,一个是K级,相差一千倍!使用Arsue Blog搭建的博客即便用的是价格低廉的虚拟主机,也能达到运行如飞一样的速度。

以下就是从果壳网上摘来的行业人士的观点

再牛逼的软件,里面也必然有新手/毕业生/实习生贡献的代码,并且是极烂,极不稳定的代码。包括你现在用的微软操作系统,苹果播放器,谷歌浏览器……有人说谷歌对于合入代码控制极为严格,没错,但是仍然有新手合入的烂代码,谷歌曾经吐槽过这样一件事:C语言的创始人曾经被谷歌招聘成为员工,但在入职三个月后仍然没有合入代码的权限,真实原因其实是因为各种流程没有走完,但被外界吐槽的是这样的牛人都不让写代码,同时谷歌还是混入了大量的低质量代码。

Java的创始人SUN公司曾经有一次组织了大量人力物力对所有Java代码使用静态工具检查并消除所有lint告警和错误,这被他们当作一件极其大的成就来宣传。

通常大公司里对于代码的态度是这样的:只要这段代码通过了所有测试并且已经入库,那么,除非有一个能说服所有人,包括项目经理,架构师,测试部,市场部等等的理由,那么就不允许再被修改。

而这个理由通常是没有的。

而且越是大公司越对这条规定执行的严格,微软的一个前高级官员曾经还特地挑出来一段烂代码自曝家丑。

另一方面,越是编程高手越喜欢蔑视编程规则,写出一些炫技的代码,这也造成了一些低质量代码混入

以前微软的源代码曾经泄漏过,里面的注释里,满满的都是程序员面对烂代码的吐槽啊。

有一段时间我还在想恐怕Linux是唯一的神话了,后来我发现在某种意义上是的,Linux会在烂代码之前注释说:这段代码很烂,不要学。

之所以Linux会容忍烂代码混入版本,是因为他们懒得写,然后一些大公司就乘虚而入了。

我知道可能很多人会觉得这没什么,可是对于一个将苹果谷歌Linux奉为心目中的圣地的程序员来说这简直就是精神支柱的幻灭啊!!!

然后,我也了解过一些老鸟对菜鸟的忠告,其中一条是

避开重写一切的诱惑

尽可能多的重用代码是最好的选择,无论代码是多么的丑陋,毕竟它已经被测试过了,也被审查过了

抛弃旧代码——尤其是存在于产品中的代码——也意味着抛弃了经年累月测试并实战过的代码,以及你还未知晓的周边代码和bug补丁。

这会浪费大量的时间、精力和多年积累下来的知识

最后我明白了为何近些年很多大公司的软件更新版本越来越快,其实都是小修小补,鲜见有什么脱胎换骨的彻底变革。

原因恐怕就如上所说,没有什么人敢动那些身经百战的老代码,即便效率它们再怎么低下,逻辑有再多的问题,只要硬件能跟上,在当今时代的高性能机子能跑得顺,那就不会有人考虑给它精简了。

同类推荐
  • 浅书年华

    浅书年华

    生命就是一场随时离场的舞会,在这里,淡淡浅书,絮语年华,这世界,我们曾来过……
  • 人间世之梅雪奇缘

    人间世之梅雪奇缘

    故事由萧家庄一桩灭门案说起。死里逃生唯一得救的十一岁女孩,被寄养到一个寻常人家。而后在流浪途中,遇到深中狼毒的少年,以此展开的奇情武侠故事。
  • 混在天堂

    混在天堂

    一个平凡的南方女孩大学毕业后从哈尔滨回到杭州,一无所有的她家境贫寒,长相平凡,却想要在号称人间天堂的杭州混出一片天地。看她如何从一个默默无闻的售车小姐华丽转身成为叱咤职场的外贸达人。面对残酷的现实,她会选择远走他乡还是坚持留守?爱情对于她来说,到底是幸运还是惩罚?
  • 我人生最落魄的那几年

    我人生最落魄的那几年

    都说有情饮水饱,但我人生最落魄的时候是和苏秦在一起的那年。
  • 玉露集

    玉露集

    金粟缀仙树,玉露浣人愁。谁道买花载酒,不似少年游。
热门推荐
  • 四川青羊宫碑铭

    四川青羊宫碑铭

    本书为公版书,为不受著作权法限制的作家、艺术家及其它人士发布的作品,供广大读者阅读交流。汇聚授权电子版权。
  • 我路过时王的假面骑士

    我路过时王的假面骑士

    其实就是一个来自异世的大佬,在时王世界安安分分地过日子,顺带教教主角,偶尔还跑到异世界玩一玩。对夏诺来说,从他来到这个世界开始他都没有过过一个安静日子。对于常磐庄吾来说,夏诺绝对是一个温柔体贴(大雾?)的前辈。对于盖茨和月读来说,夏诺就是一个神秘的人,拥有强大的实力,却是随心所欲。夏·超神秘·特强大·只想安安分分·大佬·诺:我说只是想过个安稳日子而已,然而总有些家伙来烦我。心累。
  • 曾国藩做人为官处世的大智慧

    曾国藩做人为官处世的大智慧

    曾国藩去世已经一百多年了,但是他影响了几代人,人们至今仍然对其顶礼膜拜。很多名人都对他推崇备至。梁启超说:“吾谓曾文正集,不可不日三复也。”毛泽东年轻时说:“愚于近人,独服曾文正。”即使是晚年,他还曾说:曾国藩是地主阶级最厉害的人物。而蒋介石则认为曾国藩可以做自己的老师,他把《曾胡治兵语录》当做教导高级将领的教科书,又将《曾文正公全集》常置案旁,终生捧读不辍。
  • 歌词手稿

    歌词手稿

    歌词手稿,仅用于写歌词的手稿,没有配调。
  • 卡耐基口才的艺术与情绪掌控术

    卡耐基口才的艺术与情绪掌控术

    本书是20世纪最伟大的成功学家和心灵导师卡耐基写给你的口才训练与情调修炼智慧书。
  • 宫妆

    宫妆

    作为万里挑一的和亲美人,云婵以为,下半辈子就要在番邦为和平奋斗了。没想到,到了地方被人家“退了货”。气死了老皇帝、为太后所不容,这前路也算昏暗到家了。快要绝望的时候,被陛下“捡”了回去……
  • Vendetta

    Vendetta

    本书为公版书,为不受著作权法限制的作家、艺术家及其它人士发布的作品,供广大读者阅读交流。汇聚授权电子版权。
  • 误入异世,萌兽求收养!

    误入异世,萌兽求收养!

    一不小心误入兽世,本着既来之,则安之的心态想要来个向贝爷学习的活动,安度自己在这个兽世的晚年。没想到暗戳戳的被人盯上,缠着生小兽兽,虽然这里的妹子质量是差了点,可到底也是妹子啊,人兽什么的表示真的接受不了啊!
  • 汉冠

    汉冠

    一个历史系高材生,不小心到了西晋末年。 清谈论玄,纵横捭阖。 王敦、卫阶、江应元。 潘安、贾谧、贾南风。 这是理智与荒唐并存的时代。 这是一个寒门在高门大族中崛起的故事。 (前期种田,后期争霸。).......................作者已有百万字老书《曹魏》,人品有保证,可放心收藏!轻松作,勿较真。
  • 带着孩子去相亲

    带着孩子去相亲

    背叛、欺骗、陷害。一次又一次的袭击着与世无争的她,她会选择绝地反击吗?五年的学生生涯,五年的出国进修,当一向默默无闻的她以高调的身份再度出现到众人的面前时,又将是怎样的一番光景?孰悲,孰欢?这样的十年,究竟是谁错过了谁,谁伤害了谁?