书籍详情

设计模式Java手册(影印版)

设计模式Java手册(影印版)

作者:(美)Steven John Metsker著

出版社:中国电力出版社

出版时间:2004-01-01

ISBN:9787508314099

定价:¥49.80

购买这本书可以去
内容简介
  Java程序员现在有了可以发挥设计模式法力的终极武器这部杰出的著作所精选的示例、练习以及应用设计模式时面临的挑战,将帮助你把设计模式理论变为现实SteveMetsker“寓教于实践”的方式既可增强你的实践技能,也可奠定你在关键的开发任务中运用设计模式的信心。本书阐释了经典著作《DesignPatterns》(Addison-Wesley,1995)中介绍的23种基本设计模式在这部全新的技术手册中,将这些设计模式划分成五个主要类别:接口类模式、责任类模式、构造类模式、操作类模式和扩展类模式对每个类别描述的第一章,是帮助你复习和测试你在Java中运用设计模式的能力接着,后面的章节将详细解释某个特定的模式,并通过UML图和Java代码进行演示,然后向你提出编程方面的命题,让你自己体验通过本书,你将会学到下面这些专业技能:●使域数据适合Swing组件——Adapter模式●为Swing创建外观——Facade模式●处理组合递归的,情形——Composite模式●理解在Java数据库连接中桥的作用——Bridge模式●在Model/View/Controller和观察者之间建立联系——Observer模式●通过中介维护关系的完整性——Mediator模式●在计算机之间使用代理进行通信——Proxy模式●让服务提供商决定哪个类将被实例化●支持Memento的undo操作——Memento模式●通过克隆进行原型化——Prototype模式●使用命令提供服务——Command模式●开发线程安全的迭代器——Iterator模式●通过Decorator和Visitor扩展类——Decorator模式和Visitor模式设计模式难题的解决方案在书的背面,因此你可以将自己的做法与专家的方法进行对照,书中简单介绍了UML,解释了UML的建模表示法,同时本书所有的示例代码均可以在网站上找到。通过本书的指导和训练,你将完全理解设计模式在Java应用开发中所扮演的角色,增强在实际工作中应用设计模式的能力。StevenJohnMetsker是一位学者,也是撰写面向对象技术方面书籍的作者,他已经出版的著作主要涉及对象模型中的关系完整性、Java逻辑难题的解决,以及“对象”概念在Plato和OO语言方面有什么不同,Steve还是《BuildingParserwithJava》(Addison-Wesley,2001)一书的作者,这本书介绍了如何简单而快捷地构建一个新的小型计算机语言。
作者简介
  StevenJohnMetsker是一位学者,也是撰写面向对象技术方面书籍的作者。他已经出版的著作主要涉及对象模型中的关系完整性、Java逻辑难题的解决,以及“对象”概念在Plato和OO语言方面有什么不同。Steve还是《BuildingParserswithJava》一书的作者,这本介绍了如何简单而快捷地构建一个新的小型计算机语言。
目录
Foreword
Preface
1 INTRODUCTION TO PATTERNS
 Why Patterns?
 Why Design Patterns?
 Why Java?
 Why UML?
 Why a Workbook?
 The Organization of This Book
 Welcome to Oozinoz!
 Source Code Disclaimer
 Summary
PART I  INTERFACE PATTERNS
2  INTRODUCING INTERFACES
 Ordinary Interfaces
 Interfaces and Obligations
 Placing Constants in Interfaces
 Summary
 Beyond Ordinary Interfaces
3 ADAPTER 21
 Adapting in the Presence of Foresight
 Class and Object Adapters
 Unforeseen Adaptation
 Recognizing ADAPTER
 Summary
4 FACADE 37
 Refactoring to FACADE
 Facades, Utilities, and Demos
 Summary
5 COMPOSITE 51
 An Ordinary Composite
 Recursive Behavior in Composites
 Trees in Graph Theory
 Composites with Cycles
 Consequences of Cycles
 Summary
6 BRIDGE  65
 A Classic Example of BRIDGE: Drivers
 Refactoring to BRIDGE
 A Bridge Using the List Interface
 Summary
PART II   RESPONSIBILITY PATTERNS
7 INTRODUCING RESPONSIBILITY
 Ordinary Responsibility
 Controlling Responsibility with Visibility
 Summary
 Beyond Ordinary Responsibility
8 SINGLETON
 SINGLETON Mechanics
 Singletons and Threads
 Recognizing SINGLETON
 Summary
9 OBSERVER
 A Classic Example: OBSERVER in Swing
 Model/View/Controller
 Maintaining an Observable Object
 Summary
10 MEDIATOR  103
 A Classic Example: GUI Mediators
 Relational Integrity Mediators
 Summary
11 PROXY  115
 A Classic Example: Image Proxies
 Image Proxies Reconsidered
 Remote Proxies
 Summary
12 CHAIN OF RESPONSIBILITY  131
 Varieties of Lookup
 Refactoring to CHAIN OF RESPONSIBILITY
 Anchoring a Chain
 CHAIN OF RESPONSIBILITY without COMPOSITE
 Summary
13 FLYWEIGHT  139
 Recognizing FLYWEIGHT
 Immutability
 Extracting the Immutable Part of a Flyweight
 Sharing Flyweights
 Summary
PART III CONSTRUCTION PATTERNS
14  INTRODUCING CONSTRUCTION     151
 Ordinary Construction
 Superclass Collaboration
 Collaboration within a Class
 Summary
 Beyond Ordinary Construction
15 BUILDER  157
 Building from a Parser
 Building under Constraints
 Building a Counteroffer
 Summary
16 FACTORY METHOD 165
 Recognizing FACTORY METHOD
 A Classic Example of FACTORY METHOD: Iterators
 Taking Control of Which Class to Instantiate
 FACTORY METHOD in Parallel Hierarchies
 Summary
17 ABSTRACT FACTORY  175
 Abstract Factories for Families of Objects
 Packages and Abstract Factories
 Abstract Factories for Look-and-Feel
 Summary
18 PROTOTYPE  183
 Prototypes as Factories
 Prototyping with Clones
 Using Object. clone()
 Summary
19 MEMENTO  193
 Memento Durability
 Applying Memento
 Persisting Mementos across Sessions
 Using Strings as Mementos
 Summary
PART IV  OPERATION PATTERNS
20  INTRODUCING OPERATIONS    205
 Operations, Methods, and Algorithms
 The Mechanics of Methods
 Exceptions in Methods
 Summary
 Beyond Ordinary Operators
21 TEMPLATE METHOD 215
 A Classic Example of TEMPLATE METHOD: Sorting
 Completing an Algorithm
 TEMPLATE METHOD Hooks
 Refactoring to TEMPLATE METHOD
 Summary
22 STATE 225
 Modeling States
 Refactoring to STATE
 Making States Constant
 Summary
23 STRATEGY 237
 Modeling Strategies
 Refactoring to STRATEGY
 Comparing STRATEGY and STATE
 Comparing STRATEGY and TEMPLATE METHOD
 Summary
24 COMMAND 249
 A Classic Example: Menu Commands
 Using COMMAND tO Supply a Service
 COMMAND in Relation to Other Patterns
 Summary
25 INTERPRETER 259
 An INTERPRETER Example
 Interpreters, Languages, and Parsers
 Summary
PART V EXTENSION PATTERNS
26  INTRODUCING EXTENSIONS    273
 Reuse as an Alternative to Extension
 Extending by Subclassing
 The Liskov Substitution Principle
 Extending by Delegating
 Summary
 Beyond Ordinary Extension
27 DECORATOR 289
 A Classic Example of DECORATOR: Streams
 Function Decorators
 Decorating without DECORATOR
 Summary
28 ITERATOR 313
 Type-Safe Collections
 Iterating Over a Composite
 Thread-Safe Iterators
 Summary
29 VISITOR 337
 Supporting VISITOR
 Extending with VISITOR
 VISITOR Cycles
 VISITOR Controversy
 Summary
PART VI APPENDIXES
 A APPENDIX A: DIRECTIONS  355
 B APPENDIX B: SOLUTIONS  359
 C APPENDIX C: UML AT A GLANCE  441
Glossary 449
Bibliography 459
猜您喜欢

读书导航