- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 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
您可能关注的文档
最近下载
- 电力系统优化与调度软件:PLEXOS二次开发_(16).电力系统规划与运营.docx
- 民宿管家职业技能竞赛理论考试题库(含答案).docx
- 古代诗人名人柳永人物介绍PPT.pptx VIP
- 第5章独立第三方B2B型医药电子市场.ppt VIP
- 北京市西城区2024年小升初考试语文试卷含答案.doc VIP
- AI技术在化学课堂的应用效果研究教学研究课题报告.docx
- HG∕T 5809-2020 浸胶芳纶帆布.pdf
- 网络安全防御能力评价体系框架.pdf VIP
- 2024年嘉兴国际商务区投资建设有限公司人员招聘笔试备考题库及答案解析.docx
- 统编《中国历史》八年级下册教材详细分析和教学策略.pptx
文档评论(0)