注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

黎喃自语-网络营销运营杂记

那些关于未来的想法 要自己找解答 前进的轨道有多复杂 止不住想冒险的想法

 
 
 

日志

 
 
关于我

个性嘛,善良、理性、有点率性,但不任性,生活嘛,不太独立,需要别人扶一把,长相嘛,一般般,不承认难看的,朋友说,蛮可爱的         ----------------------------------------  QQ: 1272102018        mail: liwenxia.yuki@gmail.com

网易考拉推荐

饥饿的程序员(转)  

2012-06-27 15:46:15|  分类: 计算机与 Interne |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

饥饿的程序员(转) - 日光倾城·黎 - 黎喃自语-网络营销运营杂记

自我从事IT行业以来,甚至可以说从读IT课业的那天起,我就一直在为质量还是时间烦恼,读书和工作的区别只是,我以前只为自己烦恼,最多加上我的老师,现在我为我的同事以及同事走后接手的同事烦恼,就好像我最爱的漫画家画的一样。IT与别的行业真的不同,经常会有临时配件在上面运行很久,久到大家已经忘记那只是个临时的简陋的粗糙的配件。偶然的机会,看到这篇文章,原来这个是国际烦恼,呵呵。转载一下,表示我对领导对时间上的吝啬和某些人对时间上随意承诺的不满。

编程很像吃饭。

晚上我饿了。我不在家。我不能到厨房里找点东西吃。我四周看了看,看到只有一家街对面的麦当劳。

于是,我就进入了一个任何时候我离开家、离开我那舒适的小窝后遇到的两难境地:是吃那些垃圾食品,先填饱肚子呢?还是先饿着肚子,等回到家后去吃更健康的食物?

当我在思考这种困境时,我不禁或多或少会把这个问题跟代码质量作一定的联系。当然更多的还是先考虑吃的问题。

我的话只是表达我自己的观点,我并不认为麦当劳是一个能够提供我健康食品的餐馆。作为一个追求绿色食物的人,甚至只是作为一个注意饮食的人,麦当劳的食品远在我的健康食品的标准之下。但是,我相信,跟你们很多人一样,我们已经养成了吃麦当劳里的食物时不再思考这些食物的健康价值了。我饿了,麦当劳里有食物。

既然我已经认识到了麦当劳食物对我身体的短期和长期的影响,我就会全力避免去吃它。对所有预处理过的食物都要这样。这对我来说是漫漫长路。决定去改变自己的饮食习惯并不是一蹴而就的事,健康饮食是一种持续动作。很快你就会发现这一切都跟编程有联系。

健康饮食是一种持续动作?

麦当劳的食品不是一种健康食品。然而吃巨无霸汉堡加水果沙拉会比吃巨无霸汉堡加油炸土豆条要稍微健康一些。吃星巴克的金枪鱼会比吃大汉堡要稍微健康些。在本地咖啡连锁店里喝一碗汤要比吃星巴克的沙丁鱼要稍微健康些。在家里吃新鲜蔬菜做的食物要比其它任何地方的食物都健康。

按这样的方式看食物,我们会得出两点信息:

1. 所有的事情都是相对的。你永远都可以做到更好,也一直可以做的更差。吃一个巨无霸汉堡并不意味着你会死,而为了能在家里吃饭而忍住一天不进食也未必更健康。(有道理)

2. 每一顿饭都是一个新的开始。人很容易落入这样一种陷进:“既然我昨天已经吃了一个大汉堡,不妨今天就再吃一个了”。这种思考方式是毫无逻辑的,也是有害的。每顿饭要吃什么都是一个新的决定。即使你今天早餐吃了一个大汉堡,午餐时吃家做的食物也是你的健康饮食之旅上前进的一步。

把程序代码当作食物 -- 很像食物,代码质量的保证也是个持续的过程。

从简单层面上我们可以认为,一个没有测试和文档就发布的程序包要比有测试和文档的相同的程序包质量要差。

可是,在这些一眼就能看清楚的问题之外,还有很多说不清楚的东西。没有人都对什么是”健康”的代码有自己的标准。有些人非常清楚自己的编程问题,并在不断的改进自己。有些人数年来一直写着相同烂代码却从来没有想过这些代码是否“健康”。

做出健康的选择 -- 像对待食物那样对待程序代码。

就像你需要吃饭一样,你最终需要发布你的程序。那么,如何处理这短期和长期里的影响呢?

如果你按照吃麦当劳食物的态度,发布了烂程序出去,那么,短期内你的需求是满足了。但从长期看,你将会一直受到它的影响。你的代码将会很难维护,需要你投入更多的精力。它对你长期的生活和健康没有什么好处。

如果你遵循营养家做食物的态度,短时间里你的需求可能不会得到满足。这短期的影响是你会饿会儿肚子,但这样做的一个好的理由是:它对你长期的影响是正面的。你的程序代码会更容易维护,bug 会更容易解决,而且需求变更后修改起来更容易。你的程序代码会有一个更长更健康的生命期。

抉择

写健康的代码跟你保持健康饮食一样,需要:认识和承诺。从吃垃圾食品到健康食品需要你认识到有些事情需要改进。对这些认识采取行动需要你对决定作出承诺。

改进你的编程习惯需要同样的事情:认识到有些地方需要改进,并承诺做出行动。

通常来说,你的抉择需要符合实际。你必须要吃饭,你的软件到一定时候必然要发布。找不到健康的食物,麦当劳必须是你的选择。我不知道你的软件项目会有什么样的限制因素,有时你不得不发布烂程序。但你要记住,健康的编程是一个持续过程。用沙拉换掉你的巨无霸汉堡边的炸薯条。

世上没有‘最健康’的食品。你可以花上一整天来烹饪你认为的最健康的食品,但如果它没有进入你的胃里,就谈不上有什么用处。代码质量很重要,但如果你不发布它,一切都没有意义。(这句最有道理)

最好的获得更健康的代码的途径是持续的改进。让你的程序每天都有改进,而不是期望一朝一夕就丢掉你所有的不好的编程习惯、期望以一个全新的更健康的来代替。

良好的代码习惯是非常重要的,我感觉,一个好的代码不仅是高效,简洁,稳定,最重要的是便于扩展和二次开发,这在大型代码上更为重要和有效率。


转自 Jesse Storimer The Hungry Programmer

  评论这张
 
阅读(192)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017