zoukankan      html  css  js  c++  java
  • 阅读《程序员修炼之道-从小工到专家》阅读笔记01

         第一章写的是注重实效的哲学,那注重失效的程序员的特征是什么?我们觉得是他们处理的问题,寻求解决方案时的态度,风格,哲学,能够越出直接的问题去思考,总是设法把问题放在更大的语境中,他们成功的另一关键是他们对他们所做的每一件事情负责。

         “我的代码让猫给吃了”是什么意思呢?就是注重实效的程序员对他们的职业生涯负责,不害怕承认无知或者错误,这肯定并非编程最令人愉悦的方面,但是它肯定会发生--即使在最好的项目中,彻底的测试,良好的文档,还是会出现错误,交付晚了,出现了未曾预见的技术问题。而我们应该怎么解决才是最重要的。也是一个程序员应该具备的品格。这就意味着我们需要诚实和坦率,我们可以为我们的能力自豪,但对于我们的缺点--我们的无知和错误,我们必须诚实和负责。负责是你主动担负的东西,你承担确保某件事情正确完成,但你不一定能直接控制事情的每一方面,除了尽你所能以外,你必须分析风险是否超过了你的控制,对于不可能做到的事情或者风险太大的事情,你有权不去为之负责,但你必须基于你自己的道德标准和判断来做出决定。遇见各种情况,你可以提出解决方案,而不是寻找接口和理由。不要说事情做不到,要说明能够做什么来挽回局面。

          “软件的熵”指的是某个系统的“无序”总量,遗憾的是,热力学定律保证了宇宙中的熵倾向于最大化,当软件中的“无序”增长时,称之为“程序的腐烂”。其中很多因素可以促成“软件腐烂”,其中最重要的一个似乎是开发项目时的心理(或文化),“破窗户理论”--如果一个完美的城市只出现一扇破窗户,只要有一段时间不理,就会给城市带来一种废弃的感觉,于是又会有另一扇玻璃破了,人们开始乱扔垃圾,出现了乱涂乱画。然后废弃变成了现实。所以在一个软件中,我们不能容忍破窗户,如果一些低劣的代码,团队不管的话,慢慢这些所有的代码都会变成垃圾。同样的道理你也不会想成为第一个弄脏东西的人。

          “石头汤煮青蛙”的寓意是士兵当了催化剂,把村民团结起来,和他们一起做到了他们自己本来做不到的事情--协作的后果,最后每个人都是赢家。其中最重要的是你要会做催化剂,做变化的催化剂。记住大图景,不要因为一点点小事而破坏了团队的士气。就如“温水煮青蛙”一样,我们要持续不断的观察周围发生的事情,而不只是你自己在做的事情。“足够好的软件”让你的用户参与权衡,让质量成为需求问题,今天了不起的软件往往比明天的完美软件更可取,如果你给用户某样东西,让他们及早使用,他们的反馈常常会把你引向更好的最终解决方案。“交流”知道你想说什么,简略记下你想要交流的想法,并准备好几种把他们讲清楚的策略。了解你的听众,你需要了解你的听众的需要,兴趣,能力。选择合适的时机,你需要弄清楚他们的轻重缓急,有时候只需要简单的问一句“现在我们可以谈谈....吗?”就可以啦。选择风格也很重要。尽量让文档美观,让听众参与,回复别人。记住你说什么和你怎么说同样重要

  • 相关阅读:
    前端css常用class命名id命名
    javaScript获取url问号后面的参数
    ASP.NET MVC 基础知识整理(一)
    Java基础概念(二)
    Java基础概念(一)
    ionic隐藏头部导航栏
    ionic开发中页面跳转隐藏底部Ttab
    /Date(1354116249000)/ 这样的格式怎么转成时间格式 JS
    ionic ng-repeat 循环传值
    ionic页面跳转传值 ng-click
  • 原文地址:https://www.cnblogs.com/tyyhph/p/5383819.html
Copyright © 2011-2022 走看看