程序员修炼之道--读书笔记

211 阅读4分钟

注重实效的哲学

我的源代码让猫吃了

在所有的弱点中,最大的弱点就是害怕暴露弱点

提供各种选择,不要找蹩脚的借口

责任是你主动担负的东西,如果你确定统一要为某个结果负责,你就要负起责任。当你犯错误或者判断失误时,诚实地承认它,并设法给出各种选择。不要责备别人或别的东西。

要提供各种选择,而不是借口,不要说事情做不到,要说明能够做什么来挽回局面。

不要害怕提出要求,也不要害怕承认你需要帮助

软件的熵

不要容忍破窗 不要留着“破窗户”不修—低劣的设计、错误决策或者糟糕的代码。置之不理会更快的加速腐烂的过程。 一扇破窗户就足以使项目开始衰败。 如果你所在的团队和项目的代码十分漂亮—编写整洁、设计良好并且优雅—你就很可能会格外注意不去把它弄脏。 即使火在咆哮(最后期限、发布日期、会展演示等等),你也不会想成为第一个弄脏东西的人

石头汤与煮青

做变化的催化剂 人们发现,参与正在发生的成功要更容易。让他们瞥见未来,你就能让他们聚集在你周围 记住大图景 不要像青蛙一样。要留心大图景。要持续不断地观察周围发生的事情,而不只是你自己在做的事情。

足够好的软件

短语足够好并不意味着不整洁或者制作糟糕的代码。所有系统都必须满足其用户的需求,才能取得成功。

使质量成为需求问题 知道何时止步。不要因为过度修饰和过于求精而损毁完好的程序。继续前进,让你的代码凭着自己的质量站立一会儿。它也许不完美,但不用担心:它不可能完美。

这里有个关键的问题,知道何时止步,不过于追求完美但是也不能容忍破窗,这个度。。。不好把握呀

你的知识资产

定期为你的知识资产投资

持续投入非常重要。学习的过程将扩展你的思维,使你想着新的可能性和新的做事方式拓展。 一些目标建议: 每年至少学习一种新的语言 每个季度阅读一根技术书籍 也要也读非技术书籍 上课 参见本地用户组织 试验不同的环境 跟上潮流 上网

学习的机会, 有人向你请教一个问题,你练最起码的想法都没有,要坦白的承认,但不要就此止步没把找到答案视为对你个人的挑战

批判地分析你读到的和听到的

打交道的礼节与教养

  • 确切的知道你想要问什么,并尽量明确具体
  • 小心而得体地组织你的问题。你是在请求帮助,不要显得好像是在要求对方回答
  • 组织好问题之后,停下来,再找找答案
  • 决定你是想公开提问还是私下提问
  • 做回椅子,耐性等候

交流

我相信,被打量比被忽略要好。我们的时间有很大一部分都花在交流上,所以我们需要把它做好。 一些有用的想法: 知道你想要说什么 了解你的听众 选择时机 选择风格 让文档美观 让听众参与 做倾听者 回复他人

你说什么和你怎么说同样重要

交流越有效,你就越有影响力

注重实效的途径

重复的危害

系统中的每一项知识都必须具有单一、无歧义、权威的表示

不要重复你自己(DRY-Don`t Repeat Youself)

重复是怎样发生的

  • 强加的重复
    
  • 无意义的重复
    
  • 无耐性的重复
    
  • 开发者之间的重复
    

让复用变得容易