Home | Best Seller | FAQ | Contact Us
Browse
Art & Photography
Biographies & Autobiography
Body,Mind & Health
Business & Economics
Children's Book
Computers & Internet
Cooking
Crafts,Hobbies & Gardening
Entertainment
Family & Parenting
History
Horror
Literature & Fiction
Mystery & Detective
Nonfiction
Professional & Technology
Reference
Religion
Romance
Science
Science Fiction & Fantasy
Sports & Outdoors
Travel & Geography
   Book Info

enlarge picture

Design Patterns Java Workbook  
Author: Steven John Metsker
ISBN: 0201743973
Format: Handover
Publish Date: June, 2005
 
     
     
   Book Review



Aimed at the intermediate or advanced Java developer, Design Patterns Java Workbook provides an in-depth and challenging look at 23 "classic" software patterns illustrated with Java examples.

This title fills a valuable niche by reprising the well-known guide to patterns, Addison-Wesley's Design Patterns: Elements of Reusable Software Design. While that earlier book relied on C++ and Smalltalk for its examples, this new volume uses Java code for the discussion of the same 23 design techniques. Many of the explanations draw on the author's custom classes for a hypothetical fireworks company, supplemented by material using "core" classes in standard Java. This text shows how to both recognize patterns in existing code and to incorporate them into new designs.

Early sections look at interfaces, including a standout section on trees and the Composite pattern. For the chapter on responsibility patterns, veteran Java programmers will appreciate the use of JDBC used to explain the Bridge pattern and tips for spotting other patterns in everyday Java. Builder patterns come next, with a full tour of ways to construct objects more flexibly. When it comes to operations patterns, a notable section on the Interpreter pattern presents some challenging material on language parsers.

Final chapters on extension patterns show how Java classes can extend one another using inheritance and other design principles. The discussion here of Java stream classes as examples of decorator patterns can help explain these rich (and sometimes confusing) sets of objects. Another useful section on Iterators shows how to create "type-safe" collections (normally not available in Java). Throughout this text, the author challenges the reader with dozens of easy-to-difficult questions (including actual design exercises). Complete answers are provided at the end of the book.

As a hands-on workbook that will invite you to think about patterns in Java in new ways, this text is an invaluable companion to earlier titles on patterns. Its mix of design smarts and clever examples help make it ideal for the more advanced programmer. Less experienced readers can also benefit from its intelligent presentation of some of the best available thinking in software design today, now tailored to a Java audience. --Richard Dragan


From Book News, Inc.
Metsker is a researcher and author who writes about object-oriented techniques. His workbook is written for software developers who know Java and have had some exposure to Design Patterns (Addison-Wesley, 1995), in which Erich Gamma and his colleagues presented a catalog of 23 design patterns for structuring. In this text, Metsker clearly explains each original design pattern from a Java programmer's perspective, thus enabling programmers to build confidence in their ability to recognize the patterns and to apply them in their own Java programs. Each chapter includes challenges for the reader to solve, with solutions provided in an appendix.Copyright © 2004 Book News, Inc., Portland, OR


Book Info
Presents examples, exercises, and challenges that enable you to grapple with alternative approaches and discover practical subtleties in applying design pattern theory to realistic problems. Softcover. CD-ROM included.


From the Back Cover
Praise for Design Patterns Java™ Workbook

“An excellent book... I’m incredibly impressed with how readable it is. I understood every single chapter, and I think any reader with any Java familiarity would. This book is going to be required reading in a lot of places, including my office.”      —Joshua Engel

“Provides a new, more Java-literate way to understand the 23 GoF patterns.”      —Bob Hanmer

“This book translates Design Patterns into what Java programmers need to know. It is full of short, engaging programming and design problems with solutions—making it easy for programmers to work through solutions and really make patterns ‘stick.’”      —Rebecca Wirfs-Brock

“This is one exciting book. It’s approachable, readable, interesting, instructive, and just plain valuable. It’ll eclipse all other books purporting to teach people the GoF patterns in Java—and perhaps any other language.”      —John Vlissides

Java programmers, you now have the resource you need to harness the considerable power of design patterns. This unique book presents examples, exercises, and challenges that will help you apply design pattern theory to real-world problems. Steve Metsker's learn-by-doing approach helps you enhance your practical skills and build the confidence you need to use design patterns effectively in mission-critical applications.

Design Patterns Java™ Workbook features the twenty-three foundational design patterns introduced in the classic book Design Patterns (Addison-Wesley, 1995). In this new, hands-on workbook, the patterns are organized into five major categories: interfaces, responsibility, construction, operations, and extensions. Each category begins with a chapter that reviews and challenges your ability to apply facilities built into Java. These introductory sections are followed by chapters that explain a particular pattern in detail, demonstrate the pattern in use with UML diagrams and Java code, and provide programming problems for you to solve.

With this book you will build expertise in important areas such as: Adapting domain data to Swing components Creating a FACADE for Swing Handling recursion in composites Understanding the role of BRIDGE in Java database connectivity Making the connection between Model/View/Controller and OBSERVER Maintaining relational integrity with a mediator Using proxies to communicate between computers Letting a service provider decide which class to instantiate Supporting undo operations with MEMENTO Prototyping with clones Using COMMAND to supply a service Developing thread-safe iterators Extending classes with DECORATOR and VISITOR

Solutions to the design pattern challenges appear in the back of the book, so you can compare your own work to expert approaches. A brief guide to UML explains the modeling notation, and an accompanying Web site provides all the code examples from the book.

Through the instruction and exercises offered in Design Patterns Java™ Workbook, you can fully understand the role of design patterns in Java application development, and enhance your ability to put design patterns to work.




About the Author

Steven John Metsker is a researcher and author who writes about object-oriented techniques that help developers create clean, powerful software. His published work includes articles on relational integrity in object models, solving logic puzzles in Java, and how the conception of "object" differs in Plato and the OO languages.

0201743973AB03142002


Excerpt. © Reprinted by permission. All rights reserved.

At OOPSLA 2000 in Minneapolis, Minnesota, I asked Mike Hendrickson of Addison-Wesley what types of books he thought readers wanted. I was interested to hear that he felt that there is still a market for books to help readers understand design patterns. I suggested the idea of a Java workbook that would give readers a chance to expand and to exercise their understanding of patterns. This sounded good to Mike, and he introduced me to Paul Becker, who supports Addison-Wesley's Software Patterns series. Paul's immediate response was that such a book "should have been written five years ago." I would like to thank Mike and Paul for their initial encouragement, which inspired me to take on this task.

Since that initial meeting, Paul has supported me throughout the entire development process, guiding this book toward publication. Early on, Paul asked John Vlissides, the Software Patterns series editor, for his views on the project. John's reply was that Paul should support the project "in all wise," inspirational words that have stayed with me throughout.

John Vlissides is also, of course, one of the four authors of Design Patterns. John and his coauthors--Erich Gamma, Ralph Johnson, and Richard Helm--produced the work that is in every way the foundation of this book. I referred to Design Patterns nearly every day that I worked on this book and can hardly overstate my reliance on it.

I have also relied on many other existing books, which are listed in the bibliography at the end of this book. In particular, I have depended on The Unified Modeling Language User Guide (Booch, Rumbaugh, and Jacobson 1999) for its clear explanations of UML. For accuracy in Java-related topics I have consulted Java™ in a Nutshell (Flanagan 1999b) almost daily. I have also repeatedly drawn on the insights in Patterns in Java™ (Grand 1998) and Java™ Design Patterns (Cooper 2000).

During the months that I was working on this book, I also worked at a financial services institution that has facilities in many locations. As the book emerged, I developed an instructor's course to go with it. I taught the course in Richmond, Virginia, and my associates Tim Snyder and Bill Trudell taught the course concurrently at other locations. I would like to thank these instructors and the students from all three courses for their inspiration and their many insights. In particular, I would like to thank Srinivasarao Katepalli, Brad Hughes, Thiaga Manian, Randy Fields, Macon Pegram, Joe Paulchell, Ron DiFrango, Ritch Linklater, Patti Richards, and Ben Lewis for their help and suggestions. I would also like to thank my friends Bill Wake and Gagan Kanjlia for their reviews of this book in its early stages and Kiran Raghunathan for his help in the later stages. Finally, I'd like to thank my friend Jeff Damukaitis for his suggestions, particularly his insistence that I make the code for this book available to readers. (It is, at oozinoz.com).

As the book came along, Paul Becker arranged for many excellent reviewers to help guide its progress. I'd like to thank John Vlissides again for his reviews. In every review, John somehow convinced me that he liked the book while simultaneously pointing out scores of significant improvements. I'd like to thank Luke Hohmann, Bob Hanmer, Robert Martin, and Joshua Kerievsky for their help at various stages. Each of them made this book better. I'd like to thank Joshua Engel, who has an amazing ability to blend sharp insight with a gentle touch. Finally, I'd like to thank Rebecca Wirfs-Brock, who had many great suggestions, including completely reorganizing the book. I had initially not taken care to put important but understandable patterns up front. The book is much stronger now because of Rebecca's advice and the help of all the book's reviewers.

Steve Metsker (Steve.Metsker@acm.org)

0201743973P03262002




Design Patterns Java Workbook

FROM THE PUBLISHER

Finally: a hands-on, Java-centric workbook companion for the classic Design Patterns! Workbook approach deepens your understanding, builds your confidence, and strengthens your skills. Covers all five categories of design pattern intent: interfaces, responsibility, construction, operations, and extensions. CD-ROM contains all code examples from the book -- plus bonus code examples not found in the book. This new workbook complements the classic Design Patterns, giving Java developers hands-on experience in transforming pattern concepts into working designs and code. Steven John Metsker presents nearly 90 practical pattern exercises, encompassing all 23 patterns first introduced in Design Patterns, and others that have since been identified. Metsker organizes Java design patterns by five categories of "intent": interfaces, responsibility, construction, operations, and extensions. Each section of the book focuses on one category, identifying the relevant challenges facing Java developers, and showing how specific patterns can be used to solve problems that recur in Java development and cannot easily be solved without their use. A Solutions chapter provides Metsker's detailed solutions to each problem, including -- where necessary -- UML diagrams. The accompanying CD-ROM contains all code from the book, plus additional bonus code not included in the book. For all Java developers who want to use patterns to improve their software.

About the Author: Steven John Metsker is a researcher and author focused on advanced techniques for magnifying the abilities of object-oriented software developers. A rising star in the patterns community, he was recently invited to join the acclaimed Hillside Group. He is author of Building Parsers with Java™ (Addison-Wesley).

SYNOPSIS

Metsker is a researcher and author who writes about object-oriented techniques. His workbook is written for software developers who know Java and have had some exposure to Design Patterns (Addison-Wesley, 1995), in which Erich Gamma and his colleagues presented a catalog of 23 design patterns for structuring. In this text, Metsker clearly explains each original design pattern from a Java programmer's perspective, thus enabling programmers to build confidence in their ability to recognize the patterns and to apply them in their own Java programs. Each chapter includes challenges for the reader to solve, with solutions provided in an appendix. Annotation c. Book News, Inc., Portland, OR

ACCREDITATION

Steven John Metsker is a researcher and author who explores and writes about ways to expand the abilities of developers. Steve's published work includes articles that explain how to maintain relational integrity in object models, how to solve logic puzzles in Java, and how the conception of "object" differs between Plato and the OO languages.



     



Home | Private Policy | Contact Us
@copyright 2001-2005 ReadingBee.com