国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > php开源 > php教程 > 代码天敌之体积计算

代码天敌之体积计算

来源:程序员人生   发布时间:2016-04-06 08:37:20 阅读次数:2363次

前言:好吧,我觉得Steve yegge的怨言能力太棒了,以致于我不能不重新来审视自己,到底我该怎样对待Java,怎样对待我酷爱了8年的Java,固然了,到目前为止,我可没有被Steve忽悠着去学习新的语言,如ruby,我还会待在Java的阵营,但是有必要,我要对自己以往的代码进行审视,看看Java代码的天敌究竟是甚么?

常常不经意间就发现文章被扣到各式各样的网站上面,甚是可恶!
那末人生何处不爬虫,爬虫请标http://blog.csdn.net/qing_gee
见贤思齐焉,见不贤而内自省也!

代码统计

这里写图片描述

这是我们“大宗期货交易平台”的交易端代码,主要负责交易撮合,SVN最后1个版本的日期是2015年8月7日,可以看到其净代码量在15201行。

再来统计1下2015年1月14日的代码量,7个月时间,代码已被我优化过了数次,请先不要质问我优化代码的能力!(固然,如果你非要质问,那末你肯定是个大牛,希望你能给我优化的建议。)

代码更迭的版本已经很多很多次了

看到这个版本更迭,你肯定会说,代码量将会有不小的差距,但是统计结果让我大吃1惊!
这里写图片描述

代码量差距居然只有区区的14行,这究竟是为何?我敢向你保证,这两个版本之间的代码有天大的不同,但是其体积为何没有消肿呢?

反思

再次强调1下,我们是1个创业公司,服务端代码基本上由我来完成,至于我的编码水平怎样样,不等你猜想,我的回答肯定是很烂
那末这个时候,1些真实的大牛或许会对我有所怜惜。固然或许有1些人开始啧啧了,说这家伙代码水平这么烂,也能做1个期货交易所的交易软件?

固然,不管你怎样想,我都不会反驳你,由于我把上面的“罪证”贴出来,就是为了来反思这件事,到底在对待代码体积这件事上,我们能得出甚么结论?

回头看看吧,统计1下你的项目,代码已到达了多少行,不管你的项目是阿里巴巴的淘宝系统,还是1个计算机小程序,你觉得你的代码体积你还能忍耐得了吗?

或许你会认为,不是有eclipse这类IDE吗?它足可以容纳我的代码量,并且能够帮我进行重构,等等,先来看看Steve的数据。

事实上,我试了好几个星期都没能把自己那50万行代码导入eclipse,完成索引。1动它就假死,然后再也动不了了。处理2000万行代码更是妄图。

好吧,你或许会说,Steve的电脑配置太差,这我肯定不认可,他作为1个技术界大牛,在亚马逊和Google呆过的员工,我相信他的电脑配置肯定不会比你的差!

曾,我的上司对我这样说,“交易平台的代码,包括交易端、通讯端、行情端、web管理端、前置机端,加起来应当不足5万行,而xxx项目的代码最少已突破20万行,你的项目和xxx项目难度不在1个等量级上,所以你不知道xxx项目的难度!!”

好吧,我的项目体积小,是我的错了!xxx项目是c#写的,其小组成员到达了10人,而交易平台也就我1个人,加上客户端1个人,我们两个人保护了5万行的代码,那xxx项目10个人只能保护20万行代码,项目还难产?

好吧,请谅解我的粗鄙,我说这话,并没有甚么歹意,我只是想说,代码量大其实不是甚么坏事,依照Steve说的,“体积才是代码的天敌”,那末不管是C#还是Java,在这方面,做的真的不好。如果你的项目体积增长的速度超过了业务的增长速度,我想,那是非常可怕的1件事情。我们看到了很多软件公司由于资金链短缺而沦陷,但是我相信一样有很多软件公司由于不可控的代码量而沉溺。

这里写图片描述

你应当也玩过俄罗斯方块,为了挑战自己,你其实不是从最下面1行开始思考着消除,而是等到累计到只有34行余白的时候开始动手动脑筋消除,但是这个时候,你存活下来的概率其实不高,很多时候你都在叹息,差1点就成功了,但事实是你失败了!那末在软件开发这条路上,你也不要1味的等到所有功能都齐全了,再来优化代码,或许到那个时候,你的代码量将不再可控!

结语:体积是代码的天敌!不要认为你控制着成万上亿行的代码而洋洋得意,觉得那才是真实的牛逼,而是要注意把控那愈来愈肥的体积!

生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生