Design Patterns Explained
"One of the great things about the book is the way the authors explain concepts very simply using analogies rather than programming examples--this has been very inspiring for a product I'm working on: an audio-only introduction to OOP and software development." --Bruce Eckel "...I would expect that readers with a basic understanding of object-oriented programming and design w...
"One of the great things about the book is the way the authors explain concepts very simply using analogies rather than programming examples--this has been very inspiring for a product I'm working on: an audio-only introduction to OOP and software development." --Bruce Eckel "...I would expect that readers with a basic understanding of object-oriented programming and design would find this book useful, before approaching design patterns completely. Design Patterns Explained complements the existing design patterns texts and may perform a very useful role, fitting between introductory texts such as UML Distilled and the more advanced patterns books." --James Noble Leverage the quality and productivity benefits of patterns--without the complexity! Design Patterns Explained, Second Edition is the field's simplest, clearest, most practical introduction to patterns. Using dozens of updated Java examples, it shows programmers and architects exactly how to use patterns to design, develop, and deliver software far more effectively. You'll start with a complete overview of the fundamental principles of patterns, and the role of object-oriented analysis and design in contemporary software development. Then, using easy-to-understand sample code, Alan Shalloway and James Trott illuminate dozens of today's most useful patterns: their underlying concepts, advantages, tradeoffs, implementation techniques, and pitfalls to avoid. Many patterns are accompanied by UML diagrams. Building on their best-selling First Edition, Shalloway and Trott have thoroughly updated this book to reflect new software design trends, patterns, and implementation techniques. Reflecting extensive reader feedback, they have deepened and clarified coverage throughout, and reorganized content for even greater ease of understanding. New and revamped coverage in this edition includes * Better ways to start "thinking in patterns" * How design patterns can facilitate agile development using eXtreme Programming and other methods * How to use commonality and variability analysis to design application architectures * The key role of testing into a patterns-driven development process * How to use factories to instantiate and manage objects more effectively * The Object-Pool Pattern--a new pattern not identified by the "Gang of Four" * New study/practice questions at the end of every chapter Gentle yet thorough, this book assumes no patterns experience whatsoever. It's the ideal "first book" on patterns, and a perfect complement to Gamma's classic Design Patterns. If you're a programmer or architect who wants the clearest possible understanding of design patterns--or if you've struggled to make them work for you--read this book.
本書以作者自身學(xué)習(xí)、使用模式和多年來為軟件開發(fā)人員(包括面向?qū)ο蠹夹g(shù)老兵和新手)講授模式的經(jīng)驗為基礎(chǔ)撰寫而成。首先概述了模式的基礎(chǔ)知識,以及面向?qū)ο蠓治龊驮O(shè)計在當(dāng)代軟件開發(fā)中的重要性,隨后使用易懂的示例代碼闡明了12個最常用的模式,包括它們的基礎(chǔ)概念、優(yōu)點、權(quán)衡取舍、實現(xiàn)技術(shù)以及需要避免的缺陷,使讀者能夠理解模式背后的基本原則和動機,理解為什么它們會這樣運作。
本書適合軟件開發(fā)專業(yè)人士,以及計算機專業(yè)、軟件工程專業(yè)的高校師生閱讀,也可作為面向?qū)ο蠓治雠c設(shè)計課程的參考教材。
