文章分类 - 编程之道
摘要:原文:http://en.wikipedia.org/wiki/The_Elements_of_Programming_StyleThe Elements of Programming StyleFrom Wikipedia, the free encyclopediaThis articlemay...
阅读全文
摘要:原文:http://www.martinfowler.com/articles/injection.htmlIn the Java community there's been a rush of lightweight containers that help to assemble compon...
阅读全文
摘要:原文:本访谈系列的翻译已经征得原作者的同意,转载请保留原作者和译者的链接。Copyright © 1996-2005 Artima Software, Inc. All rights reservedThe C# Design ProcessA Conversation with Anders He...
阅读全文
摘要:原文:http://norvig.com/design-patterns/design-patterns.pdf
阅读全文
摘要:原文:http://www.yinwang.org/blog-cn/2012/07/04/dan-friedman写小人书的老顽童Dan Friedman 是 Indiana 大学的教授,Lisp (Scheme) 语言的主要研究者之一。他主要的著作《The Little Schemer》(前身叫《...
阅读全文
摘要:原文:http://zh.lucida.me/blog/on-reading-books/摘要这篇文章从如何阅读书籍出发,简单讨论了如何选择书籍、是否阅读原版和阅读数量这几个常见问题,然后自己的阅读问题进行了分析和总结。注意“如何阅读”指“What to read”而非“How to read”,Mortimer J. Adler的怎样阅读一本书对How to read有着精彩的描述。“书籍”指非小说(Non-fiction)类书籍。目标我是一个功利主义者(Utilitarianism),因此我认为阅读的目标在于为自己创造实际价值,所以:我不会因为某本书看起来很有趣就去阅读(机会成本)。也不会
阅读全文
摘要:原文:http://blog.csdn.net/myan/article/details/5928531这是那篇C++0X的正文。太长,先写上半部分发了。Function/bind可以是一个很简单的话题,因为它其实不过就是一个泛型的函数指针。但是如果那么来谈,就没意思了,也犯不上写这篇东西。在我看来,这个事情要讲的话,就应该讲透,讲到回调(callback)、代理(delegate)、信号(signal)和消息传递(messaging)的层面,因为它确实是太重要了。这个话题不但与面向对象的核心思想密切相关,而且是面向对象两大流派之间交锋的中心。围绕这个问题的思考和争论,几乎把20年来所有主流的
阅读全文
摘要:原文:http://blog.csdn.net/myan/article/details/5877305先说一些废话,可以跳过不看。我主张,在具备基础之后,学习任何新东西,都要抓住主线,突出重点。对于关键理论的学习,要集中精力,速战速决。而旁枝末节和非本质性的知识内容,完全可以留给实践去零敲碎打。原因是这样的,任何一个高级的知识内容,其中都只有一小部分是有思想创新、有重大影响的,而其它很多东西都是琐碎的、非本质的。因此,集中学习时必须把握住真正重要那部分,把其它东西留给实践。对于重点知识,只有集中学习其理论,才能确保体系性、连贯性、正确性,而对于那些旁枝末节,只有边干边学能够让你了解它们的真实
阅读全文
摘要:原文:http://blog.csdn.net/myan/article/details/3144661现在的开发工作要求我们能够快速掌握一门语言。一般来说应对这种挑战有两种态度:其一,粗粗看看语法,就撸起袖子开干,边查Google边学习;其二是花很多时间完整地把整个语言学习一遍,做到胸有成竹,然后再开始做实际工作。然而这两种方法都有弊病。第二种方法的问题当然很明显,不仅浪费了时间,偏离了目标,而且学习效率不高。因为没有实际问题驱动的语言学习通常是不牢固不深入的。有的人学着学着成了语言专家,反而忘了自己原本是要解决问题来的。第一种路子也有问题,在对于这种语言的脾气秉性还没有了解的情况下大刀阔斧
阅读全文
摘要:原文:http://dearymz.blog.163.com/blog/static/20565742012102894917257/?suggestedreading&wumii正文之前软件架构师是既要精通开发技术和软件平台,又要熟悉客户的业务。优秀的软件架构师应该同时掌握业务知识和技术能力1. 客户需求重于个人简历作为工程师,我们常常要向客户推荐技术、手段,甚至方法论来解决问题。但有时我们心里不是想寻求解决问题的最佳方案,而是希望借此丰富自己的简历。这样做很可能得不偿失积累一批满意的客户,选择切合实际的技术解决他们的难题,让他们乐于推荐你,才是最好的履历。信誉远胜过时髦的编程技巧和
阅读全文
摘要:原文:http://dearymz.blog.163.com/blog/static/20565742011113185812733/?suggestedreading&wumii刘未鹏译。和《重构-改善既有代码的设计》、《重构与模式》等类型相似,更突出了单元测试在代码改善中的重要性。正文之前现实中的软件系统几乎总是会慢慢变为一个烂摊子。程序员脑子里原先那些漂亮的设计随着时间的推移会慢慢“发出腐化的臭味”需求总是在改变。那些不能适应未来需求变更的设计是糟糕的设计。能够适应未来需求变更的设计是每一位合格的软件开发者的目标实际上,迄今为止人们构建出的几乎所有软件系统都遭遇了缓慢的、不可抗拒
阅读全文
摘要:原文:http://dearymz.blog.163.com/blog/static/205657420109774536553/?suggestedreading&wumii 封面很漂亮,观点我也是很赞同——细节之中自有天地,整洁成就卓越代码。 讲编码和设计风格的,类型上和《代码大全》、《重构-改善既有代码的设计》、《重构与模式》等书类似。如果仔细读过此类其他的书并有时间允许,本书也是可以浏览一下的。如果以前从未读过任何讲编码设计风格的书,那就必须读了,不容错过。 翻译的不咋地,各种语法错误,一堆人脑编译警告... 感谢卢伟星赐书一读。序 细节之中自由天地,整洁成就卓越代码 代码质量
阅读全文
摘要:原文:http://dearymz.blog.163.com/blog/static/205657420134149427420/?suggestedreading&wumii正文之前最好的软件开发人员都知道一个秘密:美的东西比丑的东西创建起来更廉价,也更快捷。构建、维护一个美的软件系统所花费的时间、金钱都要少于丑的系统。……美的系统是灵活、易于理解的,构建、维护它们就是一种快乐。第1章 专业主义专业主义有很深的含义,它不但象征着荣誉与骄傲,而且明确意味着责任与义务。这两者密切相关,因为从你无法负责的事情上不可能获得荣誉与骄傲。代码中难免会出现bug,但这并不意味着你不用对它们负责;没
阅读全文
摘要:原文:http://dearymz.blog.163.com/blog/static/205657420139243750104/正文之前熟知软件开发的人都知道这个行业里充满了一次次悲壮的失败,每一座成功项目的丰碑下都埋葬着无数同类型的失败项目。大多数软件项目都像是一次典型的死亡行军加班是一种习惯,并会逐渐产生依赖编程远远超过程序本身的概念程序员应该知道的97件事谨慎行动技术债务就像一笔贷款。在短期内,你能从中得到好处,但是,在清偿之前,你要付出利息。代码里的捷径使得新功能更难于加入,也会影响到代码重构。它们是软件缺陷和失败测试用例的滋生地,放任它们的时间越长,情况就会越糟糕。往往是情况不可收
阅读全文
摘要:原文:http://www.oschina.net/news/44883/good-programming-quotes下面是一些迄今为止最好的关于编程的名言名句。阅读它们时相信你会有几分愉悦,你可以在一些会谈场合引用它们,一定能为你的团队吸引到不少的好程序员。UNIX很简单。但需要有一定天赋的人才能理解这种简单。–Dennis Ritchie软件在能够复用前必须先能用。–Ralph Johnson优秀的判断力来自经验,但经验来自于错误的判断。–Fred Brooks‘理论’是你知道是这样,但它却不好用。‘实践’是它很好用,但你不知道是为什么。程序员将理论和实践结合到一起:既不好用,也不知道是
阅读全文
摘要:原文:http://coolshell.cn/articles/9156.html读了《Rework》这本书好多遍,每次读都有不同的感想。但从来没有把这些感想记录下来,今天把《Rework》书中的一些章节做一些摘录,并把我的一些感想总结出来。供大家参考。这是一本平生以来让我中毒很深的书,也是一本让我思考得很多的书。希望看到这篇文章的人都能好好地读读这本书。这本书并不难读,是一本你可以一口气不中断就可以读完的书。现实世界“这在现实世界里面行不通”,当你向人们介绍一个新创意时,人们总是这么回答你。这个“现实世界”听起来如此令人沮丧,……只有人耳熟能详,习以为常的事情才会胜利,即使是这些事情已经漏洞
阅读全文
摘要:原文:http://www.ruanyifeng.com/blog/2013/01/abstraction_principles.html软件开发是"抽象化"原则(Abstraction)的一种体现。所谓"抽象化",就是指从具体问题中,提取出具有共性的模式,再使用通用的解决方法加以处理。开发软件的时候,一方面,我们总是希望使用别人已经写好的代码,另一方面,又希望自己写的代码尽可能重用,以求减少工作量。要做到这两个目标,这需要"抽象化"。最近,我读到美国程序员Derick Bailey的一篇文章,谈到"抽象化"应该遵
阅读全文
摘要:原文: http://www.techcn.com.cn/index.php?edition-view-133590-1顶尖黑客 回目录原文作者:Paul Graham原文链接:Great Hackers译者:hgyeGreat Hackers译者按:1.作者Paul Graham 是一个Lisp黑客 ,同时也是Y-Combinator的联合创始人(什么是Y-combinator的本意?看看这里 ,可惜我没有看懂,不过我猜想和Lisp有 ...... 原文作者:Paul Graham 原文链接:Great Hackers 译者:hgye译者按: 1.作者Paul Graham 是一个Lisp黑
阅读全文
摘要:原文:http://birdshome.cnblogs.com/articles/223064.html-- Bill Joy MIT BBS上说微软电话面试的一道题就是“Who do you think is the best coder, and why?”。我觉得挺有意思的,也来凑个热闹。排名不分先后。心目中的编程高手 (1) Bill Joy, 前任Sun的首席科学家,当年在Berkeley时主持开发了最早版本的BSD。他还是vi和csh的作者。当然,Csh Programming Considered Harmful 是另一个话题乐。据说他想看看自己能不能写个操作系统,就在三天里写了
阅读全文
摘要:原文:http://blog.csdn.net/magictong/article/details/6846167翻译:magictong(童磊)2011年9月版权:Mack CC原文地址:http://scientopia.org/blogs/goodmath/2011/07/06/things-everyone-should-do-code-review/原文名称:Things Everyone Should Do: Code Review 之前在一些项目中发现,修改代码所带来的bug比新开发功能的bug并不会少,而且还更不可控制,因为测试人员并不完全知道你所修改的部分到底影响到了哪些子.
阅读全文

浙公网安备 33010602011771号