Design patterns explained : a new perspective on object-oriented design = 设计模式精解 / 2nd ed.

副标题:无

作   者:Alan Shalloway, James R. Trott著.

分类号:

ISBN:9787111175698

微信扫一扫,移动浏览光盘

简介

本书的最大特点之一是作者采用类比而不是编程实例的方式将概念解释得非常清楚。我正在做一套关于OOP和软件开发的音频产品,这种讲述概念的方式给予我很大的启发。 --Bruce Eckel. 希望那些仅基本了解面向对象编程和设计的读者,在完全接触设计模式之前,能够发现这本有用的书。本书是对现有的设计模式教材的补充,并可以在入门级教材 (如《UML Distilled》) 和更高级模式著作之间充当一个很好的衔接。 --James Noble.. 本书是模式领域最简洁、最清晰、最实用的著作,阐述了模式如何使整个开发过程变得更加容易,解释了面向对象设计的关键原则,以及各种特定模式的概念和优势。通过采用许多最新的Java示例,本书精确地向程序员和架构师展示出如何使用模式来更有效地设计、开发和交付软件。通过分析Java示例,本书提示了为什么、为什么不以及如何应用模式,而且解释了模式的实现。 以畅销的第1版为基础,作者对本版进行了彻底更新,以反映新的软件设计趋势、模式和实现技术。根据广大读者的反馈,作者在第2版中加深了全书概念的阐述,并重新组织了全书内容,使其更易于理解。本书首先概述了模式的基础知识,以及面向对象分析和设计在当代软件开发中的重要性。随后,使用易懂的示例代码阐明了许多当今最有用的模式,包括它们的基础概念、优点、权衡取舍、实现技术以及需要避免的缺陷。另外,许多模式都附有UML图。 本书假定读者没有模式方面的经验,因此是学习模式的理想的第一本书,对于GoF的经典名著《设计模式》,本书也是一个很好的补充。本书适用于学习面向对象设计和设计模式的学生、程序员以及从事软件开发的人士。

目录

preface

from object orientation to patterns to true object orientation

from artificial intelligence to patterns to true object orientation

a note about conventions used in this book.

feedback

new in the second edition

acknowledgments

part i an introduction to object-oriented software

development

chapter 1 the object-oriented paradigm

overview

before the object-oriented paradigm: functional decomposition

the problem of requirements

dealing with changes: using functional decomposition

dealing with changing requirements

the object-oriented paradigm

object-oriented programming in action

special object methods

summary

review questions

.chapter 2 the uml--the unified modeling language

overview

what is the uml?

why use the uml?

the class diagram

interaction diagrams

summary

review questions

part ii the limitations of traditional object-oriented design

chapter 3 a problem that cries out for flexible code

overview

extracting information from a cad/cam system

understand the vocabulary

describe the problem

the essential challenges and approaches

summary

review questions

chapter 4 a standard object-oriented solution

overview

solving with special cases

summary

review questions

part iii design patterns

chapter 5 an introduction to design patterns

overview

design patterns arose from architecture and anthropology

moving from architectural to software design patterns

why study design patterns?

other advantages of studying design patterns

summary

review questions

chapter 6 the facade pattern

overview

introducing the facade pattern

learning the facade pattern

field notes: the facade pattern

relating the facade pattern to the cad/cam problem

summary

review questions

chapter 7 the adapter pattern

overview

introducing the adapter pattern

learning the adapter pattern

field notes: the adapter pattern

relating the adapter pattern to the cad/cam problem

summary

review questions

chapter 8 expanding our horizons

overview

objects: the traditional view and the new view

encapsulation: the traditional view and the new view

find what is varying and encapsulate it

commonality and variability analysis and abstract classes

the qualities of agile coding

summary

review questions

chapter 9 the strategy pattern

overview

an approach to handling new requirements

the international e-commerce system case study: initial requirements

handling new requirements

the strategy pattern

field notes: using the strategy pattern

summary

review questions

chapter 10 the bridge pattern

overview

introducing the bridge pattern

learning the bridge pattern: an example

an observation about using design patterns

learning the bridge pattern: deriving it

the bridge pattern in retrospect

field notes: using the bridge pattern

summary

review questions

chapter 11 the abstract factory pattern

overview

introducing the abstract factory pattern

learning the abstract factory pattern: an example

learning the abstract factory pattern: implementing it

field notes: the abstract factory pattern

relating the abstract factory pattern to the cad/cam problem

summary

review questions

part iv putting it all together: thinking in patterns

chapter 12 how do experts design?

overview

building by adding distinctions

summary

review questions

chapter 13 solving the cad/cam problem with patterns

overview

review of the cad/cam problem

thinking in patterns

thinking in patterns: step 1

thinking in patterns: step 2a

thinking in patterns: step 2b

thinking in patterns: step 2c

thinking in patterns: steps 2a and 2b repeated (facade)

thinking in patterns: steps 2a and 2b repeated (adapter)

thinking in patterns: steps 2a and 2b repeated (abstract factory)

thinking in patterns: step 3

comparison with the previous solution

summary

review questions

part v toward a new paradigm of design

chapter 14 the principles and strategies of design

patterns

overview

the open-closed principle

the principle of designing from context

the principle of encapsulating variation

abstract classes vs. interfaces

the principle of healthy skepticism

summary..

review questions

chapter 15 commonality and variability analysis

overview

commonality and variability analysis and application design

solving the cad/cam problem with cva

summary

review questions

chapter 16 the analysis matrix

overview

in the real world: variations

the international e-commerce system case study: handling variation

field notes

summary

review questions

chapter 17 the decorator pattern

overview

a little more detail

the decorator pattern

applying the decorator pattern to the case study

another example: input/output

field notes: using the decorator pattern

the essence of the decorator pattern

summary

review questions

part vi other values of patterns

chapter 18 the observer pattern

overview

categories of patterns

more requirements for the international e-commerce case study

the observer pattern

applying the observer to the case study

field notes: using the observer pattern

summary

review questions

chapter 19 the template method pattern

overview

more requirements for the international e-commerce case study

the template method pattern

applying the template method to the international e-commerce case study

using the template method pattern to reduce redundancy

field notes: using the template method pattern

summary

review questions

part vii factories

chapter 20 lessons from design patterns: factories

overview

factories

the universal context revisited

factories follow our guidelines

limiting the vectors of change

another way to think about it

different roles of factories

field notes

summary

review questions

overview

chapter 21 the singleton pattern and the double-checked

locking pattern

introducing the singleton pattern

applying the singleton pattern to the case study

a variant: the double-checked locking pattern

reflections

field notes: using the singleton and double-checked locking patterns

summary

review questions

chapter 22 the object pool pattern

overview

a problem requiring the management of objects

the object pool pattern

observation: factories can do much more than instantiation

summary

review questions

chapter 23 the factory method pattern

overview

more requirements for the case study

the factory method pattern

factory method pattern and object-oriented languages

field notes: using the factory method pattern

summary

review questions

chapter 24 summary of factories

overview

steps in the software process

parallels in factories and xp practices

scaling systems

part viii endings and beginnings

chapter 25 design patterns reviewed: a summation

and a beginning

overview

a summary of object-oriented principles

how design patterns encapsulate implementations

commonality and variability analysis and design patterns

decomposing a problem domain into responsibilities

patterns and contextual design

relationships within a pattern

design patterns and agile coding practices

field notes

summary

review questions

chapter 26 bibliography

design patterns explained: the web site companion

recommended reading

recommended reading for java programmers

recommended reading for c++ programmers

recommended reading, for cobol programmers

recommended reading on extreme programming

recommended reading on general programming

personal favorites..

index


已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

Design patterns explained : a new perspective on object-oriented design = 设计模式精解 / 2nd ed.
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    loading icon