Design Patterns Explained.
Material type:
- 9788131736319
- 23rd 005.117
Item type | Current library | Call number | Materials specified | Status | Barcode | |
---|---|---|---|---|---|---|
![]() |
Digital Library Digital Library | 005.117 SHA-D2 | Online access | Available | E0137 |
Cover -- Contents -- 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 -- Chapter 21 The Singleton Pattern and the Double-Checked Locking Pattern -- Overview -- 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 -- A -- B -- C -- D -- E -- F -- G -- H -- I -- J -- K -- L -- M -- N -- O -- P -- Q -- R -- S -- T -- U -- V -- W -- X -- Y.
Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2018. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries.