我没看完的书

十月 8th, 2009 发表评论 阅读评论

国庆放了8天假,又是放松的时候了,老王借给我一本书《重构--改善既有代码的设计》,我带了这本书,回家去了。

我现在就是在别人代码的基础上工作的,现在的代码不知出自多少个作者,有好几种风格的代码,所以这本书也正合我的需求。现在假期已接近尾声了,书也看得差不多了,我的意思的就是这本书也可以还给老王了。可能就有朋友会问,这本书你已经看完了?

其实,我有很多书都没看完过,我看书很多都是看了三分之一或者二分之一就晾在那里了,比如《C++ primer》《算法导论》《Java编程思想》《python源码剖析》等等。以《python源码剖析》为例,我曾经一个假期闭关学习此书,但看到二分之一的地方遇到了困难,在前面的内建对象,虚拟机框架都比较好理解,但到了函数机制、类机制以及后面的高级话题就很难理解了,看的时候要经常返工,也就是要返回一章之前重新再看一遍,这样重复数次多了就发现效率太低,干脆暂时放在一边,等过一段时间经验多一些也许能更轻松的理解它的内容。

至于《重构》,我的肤浅理解就是让代码更有利于人来阅读和修改,尽量能做到松耦合、高内聚。其实,像我这些没经验的coder,经常做的动作就是拷贝代码,要做一个与现有功能类似的模块,就是拷一大段代码稍做修改,竟然可以跑起来就很高兴。后来拷得多了就发现可以把通用的代码抽出来共用,面向对象给复用带来了很多容易实现方式与结构。

我发现,很多讲述重构或者设计模式之类的书都多都是来用应付变化的,简单的讲就是如果有变化,你应该只修改一个地方,而其它地方可以一点都不动或者很少改动,就能正常使用。

还是那一句话说得好,没有一个项目经理愿意听到程序员说出这样的话,我们要停下来用三个月来整理现在的代码。重构不应该是一项独立的任务,它应该包含在日常的工作当中,就像算法的运用,没有人要求你每天在想某个算法(搞研究的除外),只需要在平常的工作中各个模块中尽量做到优化,减少局部的复杂度,无论是时间还是空间。

还是一个就是,看很多国外的书都发现,书中会把一些很小的需要注意的东西都写出来,很简单的数学公式都有详细的证明,在稍微有些经验的读者都觉得这是不必要的,国外的书很多都非常厚,也许有点这个因素吧。唉,各人看法不同,细节决定成败啊。

分类: 凌乱的日记本 标签:   重构  国庆  (1121次阅读)

  1. 2009-10-08 at 12:28
    想问:1.毕业没有?2.你是数学系吧?
    Think in Java我也没看完
    现在看的是Hibernate in Action, Python核心编程(学校课程设计还是用Asp.NET···)
    高内聚、低耦合,封装变化点
  2. 2009-10-08 at 12:49
    1、Graduated。可以在右上角搜“毕业论文”看看。
    2、Yes。在关于中有介绍。
  3. 2009-10-08 at 17:43
    这些书看下去确实需要毅力的
  4. 2009-10-09 at 19:16
    我的学习精神不够
  5. 2009-10-10 at 12:44
    我想如果文章排版一下会更好.....
  6. 2009-10-17 at 00:08
    我就是会点php……其他的都不懂……呵呵
  7. 2009-10-17 at 00:08
    学了php觉得其他的都麻烦……
  8. 2009-10-21 at 20:59
    细节确实是西方人擅长的,我们有自己的特点。
  9. 2009-10-24 at 10:12
    好书是会使人放不下的。
  10. 2009-11-16 at 18:13
    没看过,没办法看不懂
  11. 2010-08-25 at 00:00
    老实说这些说我是不看的!
  12. 2010-09-14 at 10:11
    国外的书更讲究语言的艺术,但是我不知道这是不是源于翻译,呵呵
  13. 2010-09-14 at 10:12
    看不下去,呵呵
  14. 2010-09-14 at 10:16
    我先睡会!
  15. 2010-09-20 at 16:13
    挺痛苦的。。这么多
  16. 2010-09-20 at 16:43
    这么多书啊,头都大了
  17. 2010-09-20 at 16:46
    坚持下去一定能看完。。。
  18. 2010-12-14 at 14:54
    看不懂,郁闷~~看书就头疼
  19. 2011-01-14 at 21:57
    恩,头有点疼!