《重构》读后感2005-7-11字数:1681网上对于这本书的评论很热闹,在读《java编程思想》感觉有点疲倦的时候,我拿起了这本书
这本书作者是martinfowler,而且封面上印着"与《设计模式》齐名的经典巨著","《设计模式》作者为本书作序","超过70种行之有效的重构方法"等宣传语
对于这些宣传语我第一个感觉是宣传的噱头,martin没有必要通过本书与《设计模式》的比较显示自己的身价
另外由于文中常常有交叉引用,可能侯捷/熊节采用页页对译,显得每页留白很多
开篇作者并没有像常见的那样为"重构"正名溯源,而是操刀剖析了一个出租影片程序的案例
原来的代码能够满足当前需求的功能,但是面临着眼前需要增加新功能打印html格式,日后可能变更影片分类的长远需求
在变更前,作者对于最初的程序画出了问号
然后按照每次谨慎地移动一小步,频繁地测试的原则,对原来的代码实施重构
小步挪动以后,擦亮了窗户,对于程序的结构看得更远了,继续微调
终于在最后解决了该程序面临的问题,增加了程序的灵活性,但是也使得代码变得更加复杂了,减小了函数的功能粒度
似乎是微不足道的量变,产生了质变
代码在没有改头换面的前提下进行了脱胎换骨
第二章作者开始步入常规,解释关于refactoring有关的what(重构是什么),why(为什么要重构),when(什么时候进行重构),how(如何提出重沟)问题
作者也解释了重构面临的难题
我感兴趣的是重构和设计,性能比较的两节
通过对oop的学习,我逐渐理解和接受了项目逐步培养,成长的观念
原来我一直按照瀑布式开发,在项目后期总出现一些当初设计想象不到的情况,开始我总归结于自己经验不足,需求分析做的不够深入细致
接触到xp和重构以后,心中有一种豁然开朗的感觉
但是我想重构与瀑布式并不是截然对立的,而是项目开发过程中两个侧面
在我所参与的动辄上百人参与,软硬同吃的项目