skip to content
Design patterns : elements of reusable object-oriented software Preview this item
ClosePreview this item
Checking...

Design patterns : elements of reusable object-oriented software

Author: Erich Gamma
Publisher: Reading, Mass. : Addison-Wesley, ©1995.
Series: Addison-Wesley professional computing series.
Edition/Format:   Print book : EnglishView all editions and formats
Database:WorldCat
Summary:
Four software designers present a catalog of simple and succinct solutions to commonly occurring design problems, using Smalltalk and C++ in example code. These 23 patterns allow designers to create more flexible, elegant, and ultimately reusable designs without having to rediscover the design solutions themselves. The authors begin by describing what patterns are and how they can help you design object-oriented  Read more...
Rating:

based on 2 rating(s) 0 with reviews - Be the first.

Subjects
More like this

 

Find a copy in the library

&AllPage.SpinnerRetrieving; Finding libraries that hold this item...

Details

Additional Physical Format: Online version:
Design patterns.
Reading, Mass. : Addison-Wesley, ©1995
(OCoLC)624525693
Document Type: Book
All Authors / Contributors: Erich Gamma
ISBN: 0201633612 9780201633610
OCLC Number: 31171684
Description: xv, 395 pages : illustrations ; 25 cm.
Contents: 1. Introduction: What Is a Design Pattern?: Design Patterns in Smalltalk MVC --
Describing Design Patterns --
The Catalog of Design Patterns --
Organizing the Catalog --
How Design Patterns Solve Design Problems --
How to Select a Design Pattern --
How to Use a Design Pattern --
2. A Case Study: Designing a Document Editor: Design Problems --
Document Structure --
Formatting. Embellishing the User Interface --
Supporting Multiple Look-and-Feel Standards --
Supporting Multiple Window Systems --
User Operations --
Spelling Checking and Hyphenation --
Summary --
Design Pattern Catalog --
3. Creational Patterns: Abstract Factory: --
Builder --
Factory Method --
Prototype --
Singleton --
Discussion of Creational Patterns --
4. Structural Pattern: Adapter --
Bridge. Composite --
Decorator --
Facade --
Flyweight --
Proxy --
Discussion of Structural Patterns. 5. Behavioral Patterns: Chain of Responsibility --
Command --
Interpreter --
Iterator --
Mediator --
Memento --
Observer. --
State --
Strategy --
Template Method --
Visitor --
Discussion of Behavioral Patterns --
6. Conclusion: What to Expect from Design Patterns --
A Brief History --
The Pattern Community --
An Invitation --
A Parting Thought --
Appendix A: Glossary --
Appendix B: Guide to Notation --
Class Diagram --
Object Diagram --
Interaction Diagram --
Appendix C: Foundation Classes --
List. Iterator --
ListIterator. --
Point. Rect.
Series Title: Addison-Wesley professional computing series.
Responsibility: Erich Gamma [and others].

Abstract:

Four software designers present a catalog of simple and succinct solutions to commonly occurring design problems, using Smalltalk and C++ in example code. These 23 patterns allow designers to create more flexible, elegant, and ultimately reusable designs without having to rediscover the design solutions themselves. The authors begin by describing what patterns are and how they can help you design object-oriented software. They go on to systematically name, explain, evaluate, and catalog recurring designs in object-oriented systems.--From publisher description.

Table of Contents:

by spicolli (WorldCat user on 2006-03-21)

Preface xi Foreword xiii Guide to Readers xv 1 Introduction 1 1.1 What is a Design Pattern? 2 1.2 Design Patterns in Smalltalk MVC 4 1.3 Describing Design Patterns 6 1.4 The Catalog of Design Patterns 8 1.5 Organizing the Catalog 9 1.6 How Design Patterns Solve Design Problems 11 1.7 How to Select a Design Pattern 28 1.8 How to Use a Design Pattern 29 2 A Case Study: Designing a Document Editor 33 2.1 Design Problems 33 2.2 Document Structure 35 2.3 Formatting 40 2.4 Embellishing the User Interface 43 2.5 Supporting Multiple Look-and-Feel Standards 47 2.6 Supporting Multiple Window Systems 51 2.7 User Operations 58 2.8 Spell Checking and Hyphenation 64 2.9 Summary 76 Design Pattern Catalog 79 3 Creational Patterns 81 Abstract Factory 87 Builder 97 Factory Method 107 Prototype 117 Singleton 127 Discussion of Creational Patterns 135 4 Structural Patterns 137 Adapter 139 Bridge 151 Composite 163 Decorator 175 Facade 185 Flyweight 195 Proxy 207 Discussion of Structural Patterns 219 5 Behavioral Patterns 221 Chain of Responsibility 223 Command 233 Interpreter 243 Iterator 257 Mediator 273 Memento 283 Observer 293 State 305 Strategy 315 Template Method 325 Visitor 331 Discussion of Behavioral Patterns 345 6 Conclusion 351 6.1 What to Expect from Design Patterns 351 6.2 A Brief History 355 6.3 The Pattern Community 356 6.4 An Invitation 358 6.5 A Parting Thought 358 A Glossary 359 B Guide to Notation 363 B.1 Class Diagram 363 B.2 Object Diagram 364 B.3 Interaction Diagram 366 C Foundation Classes 369 C.1 List 369 C.2 Iterator 372 C.3 ListIterator 372 C.4 Point 373 C.5 Rect 374 Bibliography 375 Index 383

Reviews

User-contributed reviews
Retrieving GoodReads reviews...
Retrieving DOGObooks reviews...

Tags

All user tags (1)

View most popular tags as: tag list | tag cloud

Confirm this request

You may have already requested this item. Please select Ok if you would like to proceed with this request anyway.

Linked Data


Primary Entity

<http://www.worldcat.org/oclc/31171684> # Design patterns : elements of reusable object-oriented software
    a schema:Book, schema:CreativeWork ;
    library:oclcnum "31171684" ;
    library:placeOfPublication <http://id.loc.gov/vocabulary/countries/mau> ;
    library:placeOfPublication <http://experiment.worldcat.org/entity/work/data/808724384#Place/reading_mass> ; # Reading, Mass.
    schema:about <http://experiment.worldcat.org/entity/work/data/808724384#Topic/programacao_de_computadores> ; # Programacao de computadores
    schema:about <http://dewey.info/class/005.12/e20/> ;
    schema:about <http://experiment.worldcat.org/entity/work/data/808724384#Topic/softwareentwicklung> ; # Softwareentwicklung
    schema:about <http://experiment.worldcat.org/entity/work/data/808724384#Topic/objektorientierte_programmierung> ; # Objektorientierte Programmierung
    schema:about <http://experiment.worldcat.org/entity/work/data/808724384#Topic/programas_para_computadoras_reutilizacion> ; # Programas para computadoras--Reutilización
    schema:about <http://experiment.worldcat.org/entity/work/data/808724384#Topic/object_orientated_programming_computer_science> ; # Object-orientated programming (Computer science)
    schema:about <http://experiment.worldcat.org/entity/work/data/808724384#Topic/entwurfsmuster> ; # Entwurfsmuster
    schema:about <http://experiment.worldcat.org/entity/work/data/808724384#Topic/object_georienteerd_programmeren> ; # Object-georiënteerd programmeren
    schema:about <http://id.worldcat.org/fast/1124209> ; # Software patterns
    schema:about <http://id.loc.gov/authorities/subjects/sh87004662> ; # Computer software--Reusability
    schema:about <http://experiment.worldcat.org/entity/work/data/808724384#Topic/genie_logiciel> ; # Génie logiciel
    schema:about <http://experiment.worldcat.org/entity/work/data/808724384#Topic/architecture_logicielle> ; # Architecture logicielle
    schema:about <http://id.worldcat.org/fast/872588> ; # Computer software--Reusability
    schema:about <http://id.worldcat.org/fast/1042804> ; # Object-oriented programming (Computer science)
    schema:about <http://experiment.worldcat.org/entity/work/data/808724384#Topic/softwarewiederverwendung> ; # Softwarewiederverwendung
    schema:about <http://experiment.worldcat.org/entity/work/data/808724384#Topic/programmation_orientee_objets_informatique> ; # Programmation orientée objets (informatique)
    schema:about <http://experiment.worldcat.org/entity/work/data/808724384#Topic/logiciels_reutilisation> ; # Logiciels--Réutilisation
    schema:about <http://experiment.worldcat.org/entity/work/data/808724384#Topic/computacao_metodologia_e_tecnicas> ; # Computacao (metodologia e tecnicas)
    schema:about <http://experiment.worldcat.org/entity/work/data/808724384#Topic/hergebruik> ; # Hergebruik
    schema:bookFormat bgn:PrintBook ;
    schema:contributor <http://viaf.org/viaf/27273348> ; # Erich Gamma
    schema:copyrightYear "1995" ;
    schema:datePublished "1995" ;
    schema:description "1. Introduction: What Is a Design Pattern?: Design Patterns in Smalltalk MVC -- Describing Design Patterns -- The Catalog of Design Patterns -- Organizing the Catalog -- How Design Patterns Solve Design Problems -- How to Select a Design Pattern -- How to Use a Design Pattern -- 2. A Case Study: Designing a Document Editor: Design Problems -- Document Structure -- Formatting. Embellishing the User Interface -- Supporting Multiple Look-and-Feel Standards -- Supporting Multiple Window Systems -- User Operations -- Spelling Checking and Hyphenation -- Summary -- Design Pattern Catalog -- 3. Creational Patterns: Abstract Factory: -- Builder -- Factory Method -- Prototype -- Singleton -- Discussion of Creational Patterns -- 4. Structural Pattern: Adapter -- Bridge. Composite -- Decorator -- Facade -- Flyweight -- Proxy -- Discussion of Structural Patterns."@en ;
    schema:description "5. Behavioral Patterns: Chain of Responsibility -- Command -- Interpreter -- Iterator -- Mediator -- Memento -- Observer. -- State -- Strategy -- Template Method -- Visitor -- Discussion of Behavioral Patterns -- 6. Conclusion: What to Expect from Design Patterns -- A Brief History -- The Pattern Community -- An Invitation -- A Parting Thought -- Appendix A: Glossary -- Appendix B: Guide to Notation -- Class Diagram -- Object Diagram -- Interaction Diagram -- Appendix C: Foundation Classes -- List. Iterator -- ListIterator. -- Point. Rect."@en ;
    schema:description "Four software designers present a catalog of simple and succinct solutions to commonly occurring design problems, using Smalltalk and C++ in example code. These 23 patterns allow designers to create more flexible, elegant, and ultimately reusable designs without having to rediscover the design solutions themselves. The authors begin by describing what patterns are and how they can help you design object-oriented software. They go on to systematically name, explain, evaluate, and catalog recurring designs in object-oriented systems.--From publisher description."@en ;
    schema:exampleOfWork <http://worldcat.org/entity/work/id/808724384> ;
    schema:inLanguage "en" ;
    schema:isPartOf <http://experiment.worldcat.org/entity/work/data/808724384#Series/addison_wesley_professional_computing_series> ; # Addison-Wesley professional computing series.
    schema:isSimilarTo <http://www.worldcat.org/oclc/624525693> ;
    schema:name "Design patterns : elements of reusable object-oriented software"@en ;
    schema:productID "31171684" ;
    schema:publication <http://www.worldcat.org/title/-/oclc/31171684#PublicationEvent/reading_mass_addison_wesley_1995> ;
    schema:publisher <http://experiment.worldcat.org/entity/work/data/808724384#Agent/addison_wesley> ; # Addison-Wesley
    schema:workExample <http://worldcat.org/isbn/9780201633610> ;
    wdrs:describedby <http://www.worldcat.org/title/-/oclc/31171684> ;
    .


Related Entities

<http://experiment.worldcat.org/entity/work/data/808724384#Agent/addison_wesley> # Addison-Wesley
    a bgn:Agent ;
    schema:name "Addison-Wesley" ;
    .

<http://experiment.worldcat.org/entity/work/data/808724384#Place/reading_mass> # Reading, Mass.
    a schema:Place ;
    schema:name "Reading, Mass." ;
    .

<http://experiment.worldcat.org/entity/work/data/808724384#Series/addison_wesley_professional_computing_series> # Addison-Wesley professional computing series.
    a bgn:PublicationSeries ;
    schema:hasPart <http://www.worldcat.org/oclc/31171684> ; # Design patterns : elements of reusable object-oriented software
    schema:name "Addison-Wesley professional computing series." ;
    schema:name "Addison-Wesley professional computing series" ;
    .

<http://experiment.worldcat.org/entity/work/data/808724384#Topic/architecture_logicielle> # Architecture logicielle
    a schema:Intangible ;
    schema:name "Architecture logicielle"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/808724384#Topic/computacao_metodologia_e_tecnicas> # Computacao (metodologia e tecnicas)
    a schema:Intangible ;
    schema:name "Computacao (metodologia e tecnicas)"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/808724384#Topic/logiciels_reutilisation> # Logiciels--Réutilisation
    a schema:Intangible ;
    schema:name "Logiciels--Réutilisation"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/808724384#Topic/object_georienteerd_programmeren> # Object-georiënteerd programmeren
    a schema:Intangible ;
    schema:name "Object-georiënteerd programmeren"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/808724384#Topic/object_orientated_programming_computer_science> # Object-orientated programming (Computer science)
    a schema:Intangible ;
    schema:name "Object-orientated programming (Computer science)"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/808724384#Topic/objektorientierte_programmierung> # Objektorientierte Programmierung
    a schema:Intangible ;
    schema:name "Objektorientierte Programmierung"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/808724384#Topic/programacao_de_computadores> # Programacao de computadores
    a schema:Intangible ;
    schema:name "Programacao de computadores"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/808724384#Topic/programas_para_computadoras_reutilizacion> # Programas para computadoras--Reutilización
    a schema:Intangible ;
    schema:name "Programas para computadoras--Reutilización"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/808724384#Topic/programmation_orientee_objets_informatique> # Programmation orientée objets (informatique)
    a schema:Intangible ;
    schema:name "Programmation orientée objets (informatique)"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/808724384#Topic/softwareentwicklung> # Softwareentwicklung
    a schema:Intangible ;
    schema:name "Softwareentwicklung"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/808724384#Topic/softwarewiederverwendung> # Softwarewiederverwendung
    a schema:Intangible ;
    schema:name "Softwarewiederverwendung"@en ;
    .

<http://id.loc.gov/authorities/subjects/sh87004662> # Computer software--Reusability
    a schema:Intangible ;
    schema:name "Computer software--Reusability"@en ;
    .

<http://id.worldcat.org/fast/1042804> # Object-oriented programming (Computer science)
    a schema:Intangible ;
    schema:name "Object-oriented programming (Computer science)"@en ;
    .

<http://id.worldcat.org/fast/1124209> # Software patterns
    a schema:Intangible ;
    schema:name "Software patterns"@en ;
    .

<http://id.worldcat.org/fast/872588> # Computer software--Reusability
    a schema:Intangible ;
    schema:name "Computer software--Reusability"@en ;
    .

<http://viaf.org/viaf/27273348> # Erich Gamma
    a schema:Person ;
    schema:familyName "Gamma" ;
    schema:givenName "Erich" ;
    schema:name "Erich Gamma" ;
    .

<http://worldcat.org/isbn/9780201633610>
    a schema:ProductModel ;
    schema:isbn "0201633612" ;
    schema:isbn "9780201633610" ;
    .

<http://www.worldcat.org/oclc/624525693>
    a schema:CreativeWork ;
    rdfs:label "Design patterns." ;
    schema:description "Online version:" ;
    schema:isSimilarTo <http://www.worldcat.org/oclc/31171684> ; # Design patterns : elements of reusable object-oriented software
    .


Content-negotiable representations

Close Window

Please sign in to WorldCat 

Don't have an account? You can easily create a free account.