重构是一种生活

今天大家都在谈奥运,俺昨晚睡得香,没看。今天周六,早上也没有《第一时间》可看,所以啥也不知道,木有发言权。

谈技术,谈技术哈。^O^

《重构》已经快要看完了。前几天在我的一篇POST《适可而止》中,RL留言说:

>重构看了几篇就不能再看了,再看消化不了。:〉

我倒不同意这个看法。正如译者之一的熊节所说

《重构》是一本这样的书:也许你读完一遍之后将不会再读第二遍,但却会时时刻刻想起它,因为它已经潜移默化了你的习惯。

我现在就有这样的体会。

这两天在改一个老程序,要加一点功能。当我看到其中部分代码在其它地方出现过,我就很自然地Extract Class了。而新增的功能比原来的用法还多了一些东东,于是我又做了一个Extract Subclass。

如果换到以前,我也许还是会Copy&Paste一下,因为重复的代码很少,我不太习惯写一些很小的Class。但是《重构》改变了我的习惯。

当我看完《重构》的时候,大概它就会成为我编程生活的一部分了。

比较汗的是:俺现在还是没怎么用TDD的做法。-_-|||

一看到这一大堆老代码,真不知道要从哪里开始写测试代码。

BTW:准备下午K歌去喽。HOHO^O^

9 Replies to “重构是一种生活”

  1. gigix的话是给那些有了一定经验的人说的。我比他们不同。我认为重构这本书难就难在重构二字上,首先书的副标题说:重构是要改善现有设计。我认为,这本书另一方面是在说重构哪些代码,那些构造的不足之处,怎么在最初设计中避免不良代码,不良习惯,而不去再做重构这样的工作。而我现在,既要改善,又要设计时避免,再加上我刚出道,经验不是很足,一时间难以消化。老鸟毕竟有一段时间的经验了。才会有一些感悟。慢慢来。。。。。。

  2. 重構我應該是去年看的,但到目前為止, 這一年中,我看到的最好的書! 我覺得,重構與OO一樣,是一個思路,概念的東西,你沒看過,也許就不懂,或沒這麼系統化, 理論化, 看過了,會發覺還有這樣的做法, 很好, 也不難;一個初學者也能說看懂,當然,隨經驗的增長,領悟與最終實現也很大的不同!我覺得熊節的序也寫得很好!

  3. 重构有两个难点:1、何时重构,何处重构。这一点,《重构》这本书一直在教我们;2、在改变代码的同时不改变外部功能。这一点,书是不可能教你什么了,而靠人工来做是非常繁琐且难以保证的。要做到这一点,依靠两个工具:UnitTest和自动化重构工具。C++没有好的重构工具,这一点确实不太方便。

Leave a Reply

Your email address will not be published. Required fields are marked *