Martin Fowler的重构一书很早就爬到了我的书架上,但一直没有把它完整地读完。一是没有时间;二是每次拿起来看时,看到那些碎碎念念的东西就立即失去了耐心。终于有一天,当我有了时间,有了心情去看这本书时,我几乎只用了一个晚上就一口气读完了这本书。但老实说,这并不是因为书里的内容吸引了我,而是我十分担心这一次又是半途而废。读完之后,我第一个感受,就是明白了候捷先生为什么没有自己亲自去翻译这本书,而先要熊节出第一稿了。我挺佩服熊节的,这么絮絮叨叨的内容,他竟能完整的翻译下来。就像候捷在序里提到的那几个初印象,“重构目标过于平淡,重构步骤过于琐屑”,我完全不能理解这本书为什么会被人称为经典之作,但却能理解熊节所说的,翻译完成后没有再看过第二遍这本书。而且我非常不喜欢这本书里的一些词语,台式的术语叫法让我很不舒服。不管“Type”叫类型,叫型别;不管“Collection”叫集合,叫群集,看起来真是难受。
虽然这些年我重构了不少的代码,但每次重构前,我都有些没信心。那毕竟是目前来看运行还算正常的程序,我清清楚楚地知道我必须得重构它,但我却很不想下手。而每次重构完成后,,也让我更深刻地体会到了XP价值观中的Courage了。没有一点勇气,还真是不愿意对原来的代码下手。我知道根源在于代码是否有单元测试,没有单元测试就不敢保证修改之后它还能正常运行。单元测试极其重要,可是它与重构手法却关系不大,----无论用什么样的重构手法都必须得用单元测试,但有了单元测试,却不一定要用Fowler的那些重构方法。
Martin Fowler列举了多达72种重构手法,这些重构手法中有相当一部分内容可以直接通过IDE来实现,比
虽然这些年我重构了不少的代码,但每次重构前,我都有些没信心。那毕竟是目前来看运行还算正常的程序,我清清楚楚地知道我必须得重构它,但我却很不想下手。而每次重构完成后,,也让我更深刻地体会到了XP价值观中的Courage了。没有一点勇气,还真是不愿意对原来的代码下手。我知道根源在于代码是否有单元测试,没有单元测试就不敢保证修改之后它还能正常运行。单元测试极其重要,可是它与重构手法却关系不大,----无论用什么样的重构手法都必须得用单元测试,但有了单元测试,却不一定要用Fowler的那些重构方法。
Martin Fowler列举了多达72种重构手法,这些重构手法中有相当一部分内容可以直接通过IDE来实现,比