网站大量收购独家精品文档,联系QQ:2885784924

程序员修炼之道读阅笔记.docVIP

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
程序员修炼之道读阅笔记

第一章 注重实效的哲学 1、注重实效的程序员的特征: 是他们处理问题、寻求解决方案时的态度、风格、哲学。 设法把问题放在更大的语境中,设法注意更大的图景 对所做的每件事情负责 接受变化,拥抱变化 理解工作的语境 广泛的知识和经验基础 交流 1、我的源码让猫给吃了 在所有弱点中,最大的弱点就是害怕暴露弱点。 为自己的行为负责 对我们的无知和错误,应该诚实、坦率 预期到超过自己能力范围的风险,可以不必承担,若没有预期到已经发生,则必须承担 提供各种选择,不要找蹩脚的接口(Provide Options, Dont Make Lame Excuses.) 任何谈话可以先预演一遍,预知一下结果 不要说做不到,要想有什么解决方案 2、软件的熵 熵:来自物理学的概念,指某个系统中的“无序”的总量 促生软件腐烂的一个重要因素:开发项目时的心理(文化) 不要容忍破窗户(Dont Live With Broken Windows) 3、石头汤与煮青蛙 当遇到请求许可“拖延和漠然”,设计出可以合理要求的东西 做变化的催化剂(Be a Catalyst for Change) 记住大图景(Remember the Big Picture) 留心大图景,持续不断地观察周围发生的事情,而不只是你自己在做的事情 当你设法催生变化时,你能否确定是在做石头汤还是青蛙汤?决策是主观还是客观的? 4、足够好的软件 欲求更好,常把好事变糟(李尔王) 影响我们控制质量的因素:时间、技术、急躁 缺乏职业素养的做法: 1)无视用户的需求,一味的给程序增加新特性,或一次一次的润饰代码 2)许诺不可能兑现的时间标度(time scale) 3)为赶上最后期限而消减基本的工程内容 制作系统的范围和质量应该作为系统需求的一部分规定下来 使质量称为需求问题(Make Quality a Requirements Issue) 给用户的东西,要及早让他们使用,他们的反馈常常会吧你引向更好的最终解决方案 如果不懂得何时止步,绘画会迷失在绘制中(不要因为过度修饰和过于求精而毁损完好的程序) 5、你的知识资产 知识上的投资总能得到最好的回报(本杰明。富兰克林) 知识和经验是有时效的资产(expiring asset) 定期为你的知识资产投资(Invest Regularly in Your Knowledge Porfolio) 目标(持续投入): 1)每年至少学习一种新语言(拓宽思维) 2)每季度阅读一本技术书籍(拓宽范围) 3)也要阅读非技术书籍(了解人) 4)上课 5)参加本地用户组织 6)实验不同的环境 7)跟上潮流(了解新技术) 8)上网 批判的思考你读到的和听到的(让你能理解负责的答案) 6、交流 我相信,被打量比被忽略要好 讲清楚自己想要说的内容(可以写出大纲、撰写文档) 了解你的听众(了解他们需要什么) 选择时机 选择风格(让你的风格适合你的听众) 让文档美观(你的主意很重要,让他们以美观的方式传递到你的听众) 让听众参与 做倾听者 回复他人 你说什么和你怎么说同样重要 电子邮件交流: 1)发送前进行校对 2)检查拼写 3)让格式保持简单 4)让在你知道对方能够阅读rick-text或HTML格式的邮件的情况下使用这些格式,纯文本是通用的 5)设法让引文减少至最少 第二章 注重实效的途径 7、重复的危害 可靠的开发软件、并让我们的开发更易于理解和维护的唯一途径,是尊徐我们称之为DRY的原则: 系统中的每一项知识都必须具有单一、无歧义、权威的表示。 DRY - Dont Repeat Yourself. 不要重复你自己 在两个或更多地方表达同一事物时,若果你改变其中一处,你必须记得改变其他各处 重复范畴: 1)强加的重复:开发者觉得他们无可选择------环境似乎要求重复 2)无意的重复:开发者没有意识到他们在重复信息 开发过程中,会因为性能原因而选择违反DRY原则,这经常会发生在需要缓存数据,以避免重复昂贵的操作。诀窍是:使影响局部化。 3)无耐性的重复:开发者偷懒,他们重复,因为似乎那样更容易 时间压力:驱使最优秀的人走捷径的力量 一种最容易检测和处理的重复形式,此时需要你接受训练,并愿意为避免以后的痛苦而预先花一些时间 4)开发者之间的重复:同一团队(或不同团队)的几个人重复了同样的信息 最难检测和处理的重复 处理此问题的最佳方式:鼓励开发者相互进行主动的交流(论坛,交流组) Make It Easy to Reuse(让复用变得容易) 8、正交性 如果两条直线相交成直角,他们就是正交,比如坐标轴。用向量的术语说,这两条直线互不影响。沿着某一条直线移动,你投影到另一条直线的位置不变。 非正交系统的改变与控制更复杂 Eliminate Effects Between U

文档评论(0)

wuyoujun92 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档