读书随记-《程序员修炼之道-从小工到专家》

注重实效的程序员有哪些特征

  1.    早期的采纳者/快速的改编者
  2.    好奇
  3.    批判的思考着
  4.    有现实感
  5.    多才多艺

第一章 注重实效的哲学

    注重实效的程序员能够越出直接的问题去思考,设法把问题放在更大的语境中,注意更大的图景。

    我的源码被猫吃了  

            责任是你主动担负的东西,你必须基于你的道德准则和判断来做出承诺。当你出现错误时,应该要提出各种解决方案,不要找蹩脚的借口。

    软件的熵   

           不要留着"破窗户"(低劣的设计,错误决策,或者糟糕的代码)不修,要采取某种行动防止进一步的损坏。项目的代码要写的漂亮-编写整洁,设计良好,并且很优雅。

   石头汤与煮青蛙

           有些情况下,你也许确切的知道需要做什么,以及怎样做,整个系统就在你眼前。但请求许可或者资源时,会遇到拖延和漠然。这时先设计出你可以合理要求的东西,好好开发它,完车之后,拿给大家看,并暗示添加新功能的好处,人们更愿意参与正在发生的成功,让他们瞥见未来,就能让他们聚在你周围。但同时不要像温水里的青蛙一样,不注意周围环境的变化。要时刻保持警惕性,留心周围发生的事情,留心代码与项目的控制,不要留下“破窗户”

   足够好的软件 

           你可以训练你自己,编写出足够好的软件--对你的用户,对未来的维护者,对你自己内心的安宁来说足够好,你会变得更多产。要让你的用户参与权衡,今天的可用的软件常常比明天的完美软件更可取,要及早让用户使用。他们的反馈常常会把你引向更好的最终解决方案。

   你的知识资产   

           知识上的投资总能得到最好的回报,你的知识和经验是你最重要的职业财富。定期投资,持续不断的学习。多元化,你掌握的技术越多,就能更好的进行调整,赶上变化。

          每年至少学习一种新语言,可以帮助你拓宽思维,并避免墨守成规。

          每季度阅读一本技术书籍,掌握了正在使用的技术之后,再扩宽范围。

         也要阅读非技术书籍,软件或者网站时由人使用的,要多了解他们的需求

         持续投入十分重要,一旦你熟悉了某种新语言或者新技术,继续前进。

         批判的思考,最先出现在你眼前的知识不一定是最好的,它也许是付过钱之后放在那里的。

     交流    

         首先知道你要说什么,全面的整理自己发言稿。了解你的听众,选择更合适的方式,更合适的时机,更合适的风格传达你的想法。并让听众参与进来,多倾听他们的反馈,并及时回复。

                          WISDOM 离合诗--了解听众

            What do you want them to learn?                             你想让他们学到什么?

            What is their interest in what you've got to say?       他们对你讲的什么感兴趣?

            How sophisticated are they?                                     他们有多富有经验?

            How much detail do they want?                                他们想要多少细节?

            Whom do you want to own the information?            你想要让谁拥有这些信息?

            How can you motivate them to listen to you?           你如何促使他们听你说话?

 

  第二章 注重实效的途径         

       我们都是在一个时间和资源有限的世界上工作,如果你善于估计出事情要多长时间完成,就能更好的再两者都匮乏的情况下生存下去。

      重复的危害  

         维护意味着修正bug和增强特性,不管原因是什么,维护都不是时有时无的活动,而是整个开发过程中的例行事务。当我们进行维护是,必须找到并改变事务的表示,问题是,在我们开发的规范,过程和程序中很容易重复表述知识,这就带来了维护的噩梦。

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

      重复是怎样发生的

      强加的重复,开发这觉得他们无可选择--环境似乎要求重复。

      无意的重复,开发者没有意识到他们在重复信息。

      无耐心的重复,开发者偷懒,他们重复,因为那样似乎更容易。

      开发者之间的重复,不同的开发者重复了同样的信息。

     正交性   

      在计算技术中,该术语用于表示不相依赖性或是解耦性。如果两个或者更多事物中的一个发生变化,不会影响其他事物,这些事物是正交的。编写正交系统的好处是提高生产率和减低风险。

 

转载于:https://www.cnblogs.com/gxffighting/p/9733025.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值