程序员修炼之道:从小工到专家2

   现在这本书已经看了一半收获很多本书相对比较基础,不是那种大规模程序设计、高并发设计等等,主要是针对程序员的一些基本素质和一些基本常规编程设计做一些梳理和规范,对于初入职的程序员,养成这些良好素质是非常有必要的;对于已经入职多年的程序员,回顾一下本书,然后结合自身情况看看是否能够基本达到本书中的一些素养也是有必要的。
   贯彻全书的一个原则是DRY(Don‘t Repeat Yourself)原则,这也是每个优秀的开发人员必须要遵循的规范,编码过程中任何地方都不要重复,因为重复暂时节省的时间将会给以后的维护使用带来巨大的麻烦,如果发现代码有重复或者违反正交性等原则的地方要立刻找机会重构。这样才能够拥有更快、更好、更强健、更优雅的代码。
    书中有些法则定理让我恒安兴趣,比如说德墨忒尔法则——减少耦合:避免为了访问第三个对象中的方法而进入某个对象。某些情况下,可以为了换取速度而增加耦合。只要对于那些被耦合在一起的模块而言,这是众所周知并且可以接受的即可。
将细节提取出来,编写可动态配置的系统。
时间耦合:调整事件次序,增加并发。
不要让已有的代码支配将来的代码,如果不再实用,所有的代码都可被替换。
怎样进行利大于弊的重构:
(1)不要试图在重构的同时增加功能;
(2)在开始重构之前,确保有良好的测试;
(3)采取短小、深思熟虑的步骤。
规定需求:把底层的语义不变项当作需求进行捕捉,并把具体的或当前的工作实践当做政策记入文档。
需求不是架构,需求不是设计,也不是用户界面,需求是需要。
温柔地超出用户的期望。
我的源码让猫给吃了 2
诚实面对我们的无知和错误
在做某件事情时除了尽你所能外,必须分析风险是否超过你的控制。对于不可能做到的事情或者风险太大,你有权不去为之负责。
但是一旦承诺某件事完成,同意为某个结果负责就必须承担其责任。
当自己犯错误的时候,诚实承认它,并设法提供各种选择。不要责备别人或东西,或是拼凑借口。
在跟别人说做不到之前请先把自己的辩解说给猫听,看看是否合理还是愚蠢。你的老板听来又是怎样?
2 软件的熵 3
“不能容忍破窗户”
“破窗户”:低劣的设计,错误的决策或者糟糕的代码
没时间修理的对策:用木板把它钉起来-加入注释 加入TODO 用虚设的数据加以替代。
3 石头汤与煮青蛙 5
知道某件事情是对的,但是涉及到其他人,为了对抗漠然和拖延,就需要欺骗,让同事们开始在路上,那么我们离成功就不远了。
煮青蛙:避免拖延和偏离设计,这会导致如青蛙一样被煮熟。
4 足够好的软件 8
足够好的软件时满足用户的需求,所以必须让用户参与权衡
知道何时止步:不要在过度修饰和过于求精中损坏完好的程序,迷失其中。

你可能感兴趣的:(程序员修炼之道:从小工到专家2)