代码的重量:有关编程的部分随想录

来源 :软件工程师 | 被引量 : 0次 | 上传用户:milo999
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  程序员大约会用10%~20%的时间写代码,无论其技巧有多高,他们每天写的那么多代码,真正用于最终产品的行数大约只有10~12行。在开发期内,训练有素的程序员真正用于写代码的时间不超过10%,他总会把大部分时间用在思考、斟酌和试验去找出最佳设计。糟糕的程序员则不断地忙着随手改动代码,把大量时间用于代码调试和演示运行结果。
  盖茨曾讥讽说,平庸的代码写手制造的一万行代码往往充满垃圾,价值难抵编程高手的一行代码。的确,良好的程序员,其编程效率往往比普通人高出十倍,而杰出程序员的编程效率更是高出20~100倍。有研究报告指出,这种结论从1960年代始至今一直象摩尔定律一样没有变化。拙劣的程序员不仅效率低下,还会为他人乃至整个团队制造大量伤脑筋的后续工作。
  那些整天面对电脑,孜孜不倦、埋头编写代码的程序员其实很多时候是懒惰的,他们只是眼睛和点击很勤快,却疏于思考,他们要的无非是有个勉强的结果;而优秀程序员总是善于思考和反省,他并不畏惧推翻已有的代码,只是为了达到更高的标准。
  软件像其它事务一样,也存在着所谓熵定律。代码的频繁改动会导致软件变质,偏离原有的设计,甚至会造成软件工程整体溃坝之灾,这也许是很多软件项目耗费不菲人力物力却最终流产的重要原因之一。另外,交给用户的产品并不符合他们的真正需求也是一个常见败因。2004年有专业媒体调查报告称,全球软件项目产品中大约有51%存在重要缺陷,有15%则彻底报废。
  总之,程序员是一份充满辛苦的角色,属于高强度复杂脑力劳动。很多优秀的程序员将这项职业默认为24(小时) 7(天)的工作。他们象阿基米德和爱迪生那样,往往在洗浴间或睡梦中突发灵感。请记住:编写程序最重要的工作并不是来自键盘和鼠标,软件项目并不是靠人海战术和夜以继日的加班就能完成的体力活,而是来自思想。
  
其他文献
本周中小板指数仍连续上涨,周涨幅达3.07%,稍高于创业板2.70%、上证指数2.56%和深证成指2.61%的同期表现。在可统计的544家中小板上市公司中,除东南网架和ST琼花平盘外,有445家公司上涨,97家公司下跌。其中,无一家中小板公司的周跌幅超过了10%以上;而在上涨的公司中,却有45家周涨幅超过了10%以上,其中还有利欧股份(28%)、成飞集成(27%)、三元达(27%)、彩虹精化(20
美联储对货币政策的依赖性就如同一位赌徒无法放弃赌博的瘾。  北京时间9月14日,美联储麾下联邦公开市场委员会(FOMC)在结束为期两天的会议后宣布,0-0.25%的超低利率的维持期限将延长到2015年中,将从15日开始推出进一步量化宽松政策(QE3),每月采购400亿美元的抵押贷款支持证券(MBS),现有扭曲操作(OT)等维持不变。  有观点认为,QE3其实是全球金融市场的超重量级的利好,全球投资
自上周五复牌以后,截至本周二酒鬼酒(000799)已连续3个一字跌停。这边厢塑化剂余波未了,酒鬼酒前途未卜;那边厢关于公募资金大单拯救私募泽熙顺利出逃的事件已开始持续发酵。  无论是坊间盛传的泽熙或有特别通道,能够以更快的速度逃离跌停板;还是对公募基金为了报答当年泽熙从机构手中接盘重庆啤酒,此次投桃报李的猜测,这些无疑都违背了证券市场公平公正的原则,特别基金用基民的辛苦钱来“送礼”给私募,让基民难