`
polygoncell
  • 浏览: 56166 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

书评: Refactoring to Pattern

阅读更多
请注意:本文的版权归作者所有,如转载请注明出处。

陆陆续续又看了一些技术书,加上最近工作任务繁重,实在没时间写技术类的博文,计划断断续续写一些书的阅读评论。今天先写一本,

最近阅读的书并不都是最新的,因为些书的确是需要花时间反复研读,仔细思考的,例如关于设计模式的书。

Refactoring to Patterns就是这样一本书,一本相对来说不算太新的书,一本关于设计模式的书,一本让人从新开始思考模式的书。我本人强烈推举大家阅读。

这本书刚出来的时候,我就一直想好好静下心来读一读,无奈工作忙碌,一直没有找到机会。而且说实话,自己对设计模式也已经浸淫数载,大部分模式都已经在实
际项目中历练过,不说炉火纯青,也算得上是熟能生巧。虽然知道这是一本好书,但是心里依然会泛起阵阵涟漪:just another design
pattern
book,给我一天时间,我就能把它拿下。没想到从开始读到现在已经2个多月了,现在依然会抽时间出来翻看某个章节,然后结合实际问题仔细思考一番。说实
话,设计模式真的是个好东西,是前辈经验的积累,但是当我们熟练掌握了各种模式之后,就会遇到两个瓶颈性质的问题:

1. 如何将各类模式融汇贯通。感觉就像是武侠里面的如何将任督二脉打通,功夫再好,任督二脉不通也非高手,不同的模式相互作用会产生不同的结果,不同的模式组合会产生不同的结构,或相互补充相互促进,或互相影响互相抵制。如何选择,是个难题。

2. 如何避免过度设计。模式用熟的朋友可能会有这种感觉,编程的时候会不知不觉中使用模式进行开发,模式再好,泛滥使用,过犹不及。好像武功一般,招式繁多,固然耍起来好看,但是高手最后的境界往往是无招胜有招,只要能目的达到就行了。

第一个问题由于模式之间的组合千变万化,而且很多需要结合实际问题进行考虑,大家只能是在实际项目开发中慢慢体会,慢慢积累经验。或许再过几年会有某个人或者某些人把这些经验收集整理,编排出书。

今天主要想说说第二个问题:过度设计。 Refactoring to Patterns这本书就是帮助我们尽量避免过度设计的,这也是我推荐大家看这本书的初衷。

事实上,这本书完全可以看成是极限编程系列里面的一部巨头著作,其他的重要著作包括TDD,Refactoring,和continuous integration,合起来应该称为XP四大金刚。

使用XP开发强调keep it
simple,在编码的时候首先用最简单的办法实现功能(当然最好是测试驱动,我会在评论下面一本书是继续谈测试驱动),然后在测试代码的保护下对初级代
码进行大刀阔斧地重构,这时候这些代码自然最好能够重构成设计模式,因为针对某些特定的问题,模式基本上是最佳解决方案。这个时候就大家就需要了解如何将
现有的代码重构成为标准的设计模式代码,说的严重点,这一步关系到整个代码的质量,直至引申到真个项目的质量。这本书就针对这个关键步骤进行了讲解,是所
有采用XP方法的开发团队的必修课之一。

至于书的内容我就尽量简单概括一下:本书基本上覆盖了重构项目中会遇到的大部分问题,并且针对这些问题提供了实例讲解和具体的解决方案。这些方案不单单适
用于使用TDD开发的项目,它们更适用于那些希望通过重构改善现有代码质量的项目。当然,重构前,千万别尝试避开编写测试代码,要牢记,没有测试代码保
护,最好不要对代码做大手术。书中的很多例子都值得大家读完以后结合自己的实际项目仔细思考一番。我个人很喜欢第7章,已经在项目中采用了书中提到的很多
解决方案,并且对于某些实际例子,开始尝试优化书中的方案,希望以后能够抽出时间来写一篇详细的博文。
分享到:
评论
1 楼 spiritfrog 2008-07-15  
期待 

相关推荐

    Refactoring, Pattern, and Refactoring to Pattern

    1. Refactoring; 2. Design Patterns; 3. Refactoring to Patterns; All chm format books with high quality!

    Refactoring-to-pattern

    ### Refactoring-to-Pattern #### 书本概览与核心理念 《Refactoring-to-Pattern》这本书探讨了重构(refactoring)与模式(pattern)之间的结合应用,旨在帮助软件开发者改进现有代码的设计,并通过模式来解决...

    Refactoring to Patterns

    ### Refactoring to Patterns #### 重要概念:Refactoring(重构) **重构**是一种软件开发过程中常用的技巧,旨在改进现有代码结构而不改变其外部行为。这一过程可以帮助开发者提高代码的可读性和可维护性,同时...

    Refactoring To Patterns

    ### Refactoring to Patterns #### 一、概述 《Refactoring To Patterns》这本书由Joshua Kerievsky编写,是关于重构技术与设计模式相结合的重要参考资料。本书深入探讨了如何通过重构来实现更好的软件设计,特别...

    精通jquery 2.0(2013年10月版)

    Chapter 11: Refactoring the Example: Part I 267 Chapter 12: Using Data Templates 281 Chapter 13: Working with Forms 309 Chapter 14: Using Ajax: Part I 351 Chapter 15: Using Ajax: Part II 381 ...

    Domain-Driven Design Reference:Definitions and Pattern Summaries

    Pattern Language Overview I. Putting the Model to Work Bounded Context Ubiquitous Language Continuous Integration Model-Driven Design Hands-on Modelers Refactoring Toward Deeper Insight II. Building ...

    重构与模式(Refactoring to Patterns)

    简体中文版,djvu格式清晰版,格式体积特别小,易于下载阅读。本文档开头没有封面及出版社印刷版次等信息,因是清晰电子版,仅供大家参考之用,以减少出版社之投诉。大家可以下载对照参悟。djvu格式的打开,可以用...

    notes-refactoring:阅读笔记:Refactoring(福勒)

    重构-福勒(WIP) 我的学习笔记来自阅读《 第三章-代码中的不良气味1.神秘的名字函数,模块,变量和类的名称混乱。 确保他们清楚地传达他们的工作方式和使用方法。 2.重复的代码同一代码结构存在多个地方。...

    Refactoring To Patterns《重构与模式》英文版

    ### 重构与模式:理论与实践的融合 #### 书籍概览 《重构与模式》是一本由Joshua Kerievsky编写的书籍,由Addison Wesley出版社于2004年8月5日出版,ISBN号为0-321-21335-1,全书共400页。该书旨在将重构技术和...

    refactoring to patterns

    《重构至设计模式:深化代码结构的理解与应用》 重构至设计模式,是软件开发领域的一项高级技巧,它不仅能够优化代码结构,还能提升代码的可读性、可维护性和可扩展性。本文将深入探讨《重构至设计模式》一书中的...

    重构与模式(Refactoring to patterns).part03.rar

    一共12个包,全下载解压 本书开创性地深入揭示了重构与模式这两种软件开发关键技术之间的联系,说明了通过重构实现模式改善既有的设计,往往优于在新的设计早期使用模式。本书不仅展示了一种应用模式和重构的创新...

    RAID: Refactoring-aware and Intelligent Diffs-crx插件

    语言:English 向GitHub diff添加重构注释 ...源代码:https://github.com/rodrigo-brito/refactoring-aware-diff安装-安装重构感知查看Chrome扩展-在GitHub CI中包括重构感知Diff操作(在Github描述中可

    Addison Wesley - Refactoring to Patterns (Joshua Kerievsky)

    重構技術的書,雖然是04年的書,值得大家一看

    好书推荐之: 重构与模式.Refactoring.to.Patters.part1

    好书推荐之: 重构与模式.Refactoring.to.Patters.part1 好书推荐之: 重构与模式.Refactoring.to.Patters.part1 120M,所有分两部分传了

    Refactoring: Improving the Design of Existing Code 第二版

    This eagerly awaited new edition has been fully updated to reflect crucial changes in the programming landscape.Refactoring, Second Edition,features an updated catalog of refactorings and includes ...

    Refactoring to patterns - Joshua Kerievsky

    《Refactoring to Patterns》是Joshua Kerievsky所著的一本专业书籍,主要内容涉及软件设计中的重构和模式应用。本书详细介绍了通过一系列低级重构来安全地将设计向特定模式实现移动、靠近或远离的方法。Kerievsky以...

    Refactoring to Patterns - Joshua Kerievsky.epub

    This book is about the marriage of refactoring—the process of improving the design of existing code—with patterns, the classic solutions to recurring design problems. Refactoring to Patterns ...

Global site tag (gtag.js) - Google Analytics