只对代码无法表达的东西写注释
本文翻译自”Comments Only What the Code Cannot Say“,来自于《程序员应该知道的97件事》一书中的某个章节。 我们知道理论与实践之间存在差异。在实践中,这个差异远大于其在理论中所描述的那样 – 一份对注释(comments)的观察数据也证实了这一点。理论上,通常的注释代码的想法听起来是值得的:它可以为读者提供更多的细节,可以解释发生了什么事情。有什么能比自我帮助...
本文翻译自”Comments Only What the Code Cannot Say“,来自于《程序员应该知道的97件事》一书中的某个章节。 我们知道理论与实践之间存在差异。在实践中,这个差异远大于其在理论中所描述的那样 – 一份对注释(comments)的观察数据也证实了这一点。理论上,通常的注释代码的想法听起来是值得的:它可以为读者提供更多的细节,可以解释发生了什么事情。有什么能比自我帮助...
今天是我的宝贝儿闺女-果果的一周岁生日。老爸特在此发文以表祝贺和纪念。 “时间飞逝”虽然是句套话,但它却真实地反映出这一年来的情况。的确是太快了!去年(2010年)的5月3日上午10点多,果果在大家的热切期盼下呱呱坠地,而如今小家伙儿都已经可以独立行走了。果果这一年来的成长还算是顺利。小家伙一直是母乳喂养(今天也正式断掉母乳了),体格很是健壮,各方面身体指数也在同龄平均水平之上。一年来基本没有什么...
今天是Ubuntu 11.04版本(Natty Narwhal)发布的正日子!想必全世界的Ubuntu Fans们都会或多或少的兴奋上一阵儿。我接触Ubuntu这个Linux发行版较早,甚至可以追溯到Ubuntu 5.10。不过真正将Ubuntu作为我日常工作学习的第一操作系统还是在去年Ubuntu 10.04LTS版本发布之后。从那时起到现在整整有近一年时间了。这里我也来说说这一年来使用Ubun...
今年春节时我就从广播中得知某商家会在沈阳中街复原搭建一个迈克尔·贝版《变形金刚》中的擎天柱大哥。这几个月来一直没有机会到中街去,本以为复原版的擎天柱早已经被拆除了。但今天一到中街就看到了远处巍然屹立的擎天柱大哥,见此场景心中很是兴奋。遗憾的是今天没带那个日本破数码相机,无奈只能用手中的Moto手机为大哥留影了。闲话少说,上图,让大家也能欣赏到擎天柱大哥的伟岸英姿: 擎天柱大哥正面标准照 擎天柱大哥...
本文翻译自"The Boy Scout Rule",来自于《程序员应该知道的97件事》一书中的某个章节。 童子军有一条规则:“永远保持离开时的露营地比你发现它时更整洁”。如果你在地面上发现了脏东西,那么无论是否是你留下的,你都要将它清理干净。你有意地为下一组露营者改善环境。(实际上,由童子军之父罗伯特·斯蒂芬森·史密斯·贝登堡编写的原版规则是这样的:“尝试让这个世界在你离开时比你发现它时变得更美好...
代码风格(style)一直是一个见仁见智的问题,但是对于一个团队而言,如果能在代码风格上达成一致,显然无论对团队还是对个人来讲都是大有裨益的。 在这方面我们也曾做过努力,包括在团队中引入astyle工具,并在astyle的代码美化风格配置上,团队成员也集体达成过一致。但是在开发过程中还是出现了一些问题。最主要的就是对astyle工具使用不足:一些同事总是记得不停地写代码,但却忘记了按约定好的风格要...
本文翻译自”Use the Right Algorithm and Data Structure“,来自于《程序员应该知道的97件事》一书中的某个章节。 _一家拥有多个分行的大银行抱怨说他们为出纳员新买的计算机运行得太慢了。这件事儿发生在电子银行以及ATM机使用普及程度远不及现在的那个年代。人们更多的是亲自到银行办理业务,这些运行超慢的计算机使得大家排起了长队。因此,这家银行威胁计算机供货商要结束...
忽如一夜春风来,千树万树"桃花"开。北方的春天照比南方来得要晚些,但是来得却甚是迅速。前天这里真的是仿佛一夜间迎来了春天,园区里和马路两旁的桃花都含苞待放,部分桃树上已经是挂满了白色或粉色的桃花。室外的温度也已经明显回升,一件T恤+一件外套足以让你远离寒冷。果果已经在家里整整憋了一个冬天了,现在是带果果到户外活动的时候了。 不知不觉间果果已经是11个月多的“大孩”了-个头体重都比同龄小女孩儿要多一...
本文翻译自"Fulfill Your Ambitions with Open Source",来自于《程序员应该知道的97件事》一书中的某个章节。 如果你在工作中没能开发那些可以实现你雄心壮志的软件,那你将有很不错的机会。也许你正在为一家庞大的保险公司开发软件,然而你实际上却宁愿供职于Google、Apple、Microsoft或是你自己初创的公司去开发下一个对世界影响巨大的软件。如果你去为你根本...
当今的软件开发更多是团队合作,团队的所有成员均工作在同一份代码库上。这样即便是有了先进的版本控制管理工具(诸如Subversion、Git等),出现冲突(Conflict)的情况也是在所难免的。这就需要你学会解决冲突。 以Subversion为例,多数人在学习这类工具时都选择了浅尝辄止,仅仅停留在会使用update和commit这些常用的命令上。这样大家就错过了那些可以帮助你快速解决冲突的命令,以...