新书试读-《大话重构》

      又要写试读笔记,头疼,因为要写出好文章总是要花很多精力和心血的。这次试读的是《大话重构》,一讲到重构,感慨良多!


1.你的系统需要重构
      随着业务的扩展,数据量的提升,原有的系统已经无法满足贪婪的业务需要了,因此,重构往往成了偶然中的必然事件。我自己也曾亲身经历过这么一段。因为重构,我心潮澎湃、没日没夜的投入工作,用那种“把项目当自己儿子养的感觉”来形容再恰当不过了!重构过程是曲折的,有时因为完成了一个功能难点而兴奋不已,有时会因为重构的结构不好解决现有的难题而沮丧,有时会因为在重构过程中业务的变迁而不知所措……最后重构项目上线,解了Boss和大Boss的燃眉之急,却把自己置于水深火热的情况之中,难免失落和沮丧。

2.重构的工作实践经历
      回想去年的这个时候,我正在全神贯注地投入在项目重构之中。原来的项目工程是在业务和Boss们每天都紧紧催促的情况下由一位经验并不丰富的工程师在火急火燎的情况下完成的。这种情况下的代码,难免变得没有结构和不合理设计。使得代码变得结构繁琐,并影响理解,后期加入的工程师更是难以招架。原本简单的业务逻辑,却异常让人感觉晦涩难懂。
      就在这样的情况之下,我们赶上要加入一个全新的业务模块。部门会议一致决定:此时不重构,更待何时?!
      目标依然确定,怎样付诸行动,怎么制定计划,如何开始成了接下来的问题。
      没错,就跟你想的一样!我们采用了“大布局”!一群开发人员开始紧锣密鼓的整理原系统的需求、梳理业务流程和逻辑,形成功能说明书;然后布局新项目的结构,设计代码分层,接口、服务一个个都设计好;接着开始分模块、功能开始编码,联调,测试。一开始是一个月一个周期,项目后来是一周一个周期,最后是一天一个测试版本(貌似在这一步我们没有犯太多的错误,但这也是Bug驱使,不至于使我们错的更远)。可惜的是在最后阶段,Boss又一再要求项目缩减工期,Boss们只关注视觉效果和功能实现,性能是什么?Boss不关注的——这就是赤果果的工作商业(这再一次让我感觉找一个懂一点技术的Boss有多重要)。

3.一点总结
      尽管在我们的辛勤努力下,项目最终按期上线了。但是始终耿耿于怀,让我感觉最深刻部分与书中所讲不谋而合(这是亲身实践出来的教训啊,如果早点看到这类重构相关的书籍,或许就不会走如此多弯路了!):
3.1、大布局你真的伤不起!——这很可能让你走很多很多的冤枉路!
3.2、重构时,我们应该崇尚小设计而不是大布局!——这样可以让你的项目变得轻巧,如果出现错误,很容易回归。
3.3、小步快跑是一种逐步进化式的程序优化过程,它是重构思想的重要核心!——切忌急功近利的做法,但一切要从实际出发!
3.4、在职场,一定要替你的Boss考虑,首先保证系统能平稳运行,其次再来求优化和发展。


记:最近正有意阅读此类书籍,非常感谢ITeye试读活动推荐了这本书!阅读本书有助于对重构的理解,尤其适合Java开发人员。
@希望大家多读书、读好书!转载请注明

猜你喜欢

转载自kingwudy.iteye.com/blog/2097168