《程序员修炼之道——从小工到专家》阅读笔记*part2

第二章阅读了一半,有点颠覆了我对这本书的看法。

术业有专攻。还是有一些专业到我看不懂的词汇。以后还需要多多积累。可能等我再学习一段时间或者参加工作了再来读一遍这本书就好了。

1.在我们编程序的时候,总会有一些重复出现:

强加的重复(imposed dupUcalbn)开发者觉得他们无可选择

无意的重复(inadvertent duplLcation)开发者没有意识到重复

无耐性的重复(impatiem duplication开发者偷懒,他们重复,因为那样似乎更容易
 
开发者之间的重复(interdeveloper duplication一团队(或不同团队的几个人重复了同
样的信息
 

这些重复往往是浪费我们时间和精力的重复。我们有时候对无用重复要进行一些操作,复用起来。

2.下面还有一个在初学时常见的例子: line线段类,有起点终点和线段长度。第一种定义方式就很普通。

 

 

而长度是基于两个端点的变化而变化的。当你要改变端点的坐标值时,你还要手动再去更改线段长度这一变量。当你采用以下方法把长度设为一种方法,就变得动态了。

 

 

想要优化你的方法,使类中的方法注意“保持行为良好”,则改成以下这样就显得比较完美了。

 

 

在以后的编程中也要注重代码的完整性,可操作性。第一种不是不对,而是不够好。如果都写成第三种这样,就会留有更大的空间。

 

3.要注重代码的分块性。也就是说,当你更改了这一块的代码,而对其他模块的代码没有影响。尽量做成这样。

 避免使用全局变量,避免编写相似的代码。

  设法保持代码的灵活性,而你还需要考虑维持架构、部著及供应商集成等领域的灵活性。要把代码编的留有空间。给自己一个后路。决策是可以随时更换的。要视为把决策写在沙滩上,而不是刻在石头上。

 强加的重复imposed dupUcalbn)ÿ 开发者觉得他们无可选择——   似乎要求重复u

 

 无意的重复inadvertentduplLcation)  发者没有意识到他们在重复倍息。


 

 

 

耐性的重复impatiem duplication). 开发者偷懒,他们重复,因为那样似乎更容易。<JD

 

者之间的重复(interdeveloper duplication乂同一团队(或不同团队)的几个人重复了同

 

样的信息。

posted @ 2019-10-31 17:14  _Aming  阅读(118)  评论(0编辑  收藏  举报