首页>参考读物>计算机科学与技术>软件工程及软件方法学

从重构到模式(英文版)
作者 : Joshua Kerievsky
丛书名 : 经典原版书库
出版日期 : 2005-11-22
ISBN : 7-111-17568-9
定价 : 49.00元
扩展资源下载
扩展信息
语种 : 英文
页数 : 367
开本 : 16开
原书名 : Refactoring To Patterns
原出版社: Addison-Wesley
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

本书荣获2005年《软件开发》杂志图书通用类的效率大奖 (Productivity Award)

  1994年,《设计模式》通过引入经典的解决方案来处理反复出现的设计问题而改变了面向对象开发技术的发展前景;1999年,《重构》通过引入一种有效的过程来改善代码而彻底变革了设计的内涵;本书则通过重构的演进过程来保持模式的一致性,从而改变了我们的设计方法。
  本书介绍了以模式为导向的重构方法的理论和实践:一系列低级重构,让设计人员能够安全地将设计移到模式实现,或从模式实现中移出设计。通过使用实际项目的代码,本书记录了潜藏在20多个基于模式的设计转换之下的思想方法和设计步骤。同时,本书对于模式差异以及如何以尽可能简单的方式实现模式提出了颇有见解的观点。

本书的主要内容
  ■列出27个以模式为导向的重构,并辅以实际项目的代码实例。
  ■描述12个“设计味道” (design smell) ,指示出需要本书所讲述的重构方法。
  ■关于模式和重构的综合说明以及新的观点和想法。
  ■详细的实现机制:如何组合低级重构来实现高级模式。
  ■多种方式来实现相同的模式以及何时使用哪一种。
  ■采用实际的方法引导读者尤其是缺乏模式或重构经验的读者开始学习模式或重构方面的知识。
  本书提炼和反映了全球模式、重构和敏捷开发社区60多位软件工程领域先驱的思想和观点。不管你正在集中精力进行遗留开发还是新型开发,本书都将帮助你学会如何安全、有效地做出重要的设计变更,使你成为更好的软件设计人员。

图书特色

作者简介

Joshua Kerievsky:Joshua Kerievsky:  Industrial Logic公司 (http://industriallogic.com) 的创始人,这是一家主营极限编程业务的公司。自1988年以来,作为一名专业的软件开发人员、教员和导师,他为Bankers Trust、MTV、MBNA、Ansys、MDS Sciex、Nielsen Media Research和Sun Microsystems等客户提供咨询及培训服务。他还经常在各种会议上发言,并撰写了大量的论文。

图书目录

1. Why I Wrote This Book.
Over-Engineering.
The Patterns Panacea.
Under-Engineering.
Test-Driven Development and Continuous Refactoring.
Refactoring and Patterns.
Evolutionary Design.

2. Refactoring.
What Is Refactoring
What Motivates Us to Refactor
Many Eyes.
Human-Readable Code.
Keeping It Clean.
Small Steps.
Design Debt.
Evolving a New Architecture.
Composite and Test-Driven Refactorings.
The Benefits of Composite Refactorings.
Refactoring Tools.

3. Patterns.
What Is a Pattern
Patterns Happy.
There Are Many Ways to Implement a Pattern.
Refactoring to, towards, and away from Patterns.
Do Patterns Make Code More Complex
Pattern Knowledge.
Up-Front Design with Patterns.

4. Code Smells.
Duplicated Code.
Long Method.
Conditional Complexity.
Primitive Obsession.
Indecent Exposure.
Solution Sprawl.
Alternative Classes with Different Interfaces.
Lazy Class.
Large Class.
Switch Statements.
Combinatorial Explosion.
Oddball Solution.

5. A Catalog of Refactorings to Patterns.
Format of the Refactorings.
Projects Referenced in This Catalog.
A Starting Point.
A Study Sequence.

6. Creation.
Replace Constructors with Creation Methods.
Move Creation Knowledge to Factory.
Encapsulate Classes with Factory.
Introduce Polymorphic Creation with Factory Method.
Encapsulate Composite with Builder.
Inline Singleton.

7. Simplification.
Compose Method.
Replace Conditional Logic with Strategy.
Move Embellishment to Decorator.
Replace State-Altering Conditionals with State 166
Replace Implicit Tree with Composite.
Replace Conditional Dispatcher with Command.

8. Generalization.
Form Template Method.
Extract Composite.
Replace One/Many Distinctions with Composite.
Replace Hard-Coded Notifications with Observer.
Unify Interfaces with Adapter.
Extract Adapter.
Replace Implicit Language with Interpreter.

9. Protection.
Replace Type Code with Class.
Limit Instantiation with Singleton.

10. Accumulation.
Move Accumulation to Collecting Parameter.
Move Accumulation to Visitor.

11. Utilities.
Chain Constructors.
Unify Interfaces.
Extract Parameter.

Afterword by John Brant and Don Roberts.
References.
Index.

教学资源推荐
作者: 黄松 洪宇 郑长友 朱卫星 编著
作者: 窦万峰,杨坤,许敏,缪静娴,钱辰
参考读物推荐
作者: (美)Michael R.Fine
作者: (印)Gopalaswamy Ramesh