Thursday, October 22, 2009

Patterns in Java, Volume 1-A Catalog of Reusable Design Patterns Illustrated with UML, Second Edition




















Patterns in Java, Volume 1—A Catalog of Reusable Design Patterns Illustrated with UML, Second Edition
Patterns in Java, Volume 1: A Catalog of Reusable Design Patterns Illustrated with UML, Second Edition
by Mark Grand
John Wiley & Sons � 2002

























Patterns in Java, Volume 1—A Catalog of Reusable Design Patterns Illustrated with UML, Second Edition



Mark Grand




Wiley Publishing Company



Publisher

Robert Ipsen



Editor

Theresa Hudson



Developmental Editor

Kathryn Malin



Managing Editor

Angela Smith



New Media Editor

Brian Snapp



Text Design & Composition

North Market Street Graphics


Designations used by companies to distinguish their products are often claimed as trademarks. In all instances where Wiley Publishing, Inc. is aware of a claim, the product names appear in initial capital or all capital letters. Readers, however, should contact the appropriate companies for more complete information regarding trademarks and registration.


Copyright © 2002 by Mark Grand. All rights reserved.


Published by Wiley Publishing, Inc., Indianapolis, Indiana


Published simultaneously in Canada.


No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except as permitted under Sections 107 or 108 of the 1976 United States Copyright Act, without either the prior written permission of the Publisher, or authorization through payment of the appropriate per-copy fee to the Copyright Clearance Center, 222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax (978) 750-4744. Requests to the Publisher for permission should be addressed to the Legal Department, Wiley Publishing, Inc., 10475 Crosspointe Blvd., Indianapolis, IN 46256, (317) 572-3447, fax (317) 572-4447, E-mail: permcoordinator@wiley.com


This publication is designed to provide accurate and authoritative information in regard to the subject matter covered. It is sold with the understanding that the publisher is not engaged in professional services. If professional advice or other expert assistance is required, the services of a competent professional person should be sought.



Library of Congress Cataloging-in-Publication Data:

ISBN: 0-471-22729-3


Wiley also publishes its books in a variety of electronic formats. Some content that appears in print may not be available in electronic versions.


For more information about Wiley products, visit our web site at www.wiley.com.


Printed in the United States of America.


10 9 8 7 6 5 4 3 2 1



 



Acknowledgments


I would first like to acknowledge the patience of my wife, Nicole. Without her support, this second edition of Patterns in Java, Volume 1 would not have been possible.


I would also like to acknowledge the feedback that I have received from many readers whose emails to me suggested improvements and corrections that have gone into this second edition. I would like to single out Ed Remmell, who organized a discussion group around my book and took the time to send me summaries of the discussions. Other readers who took the time and trouble to send me useful questions and comments are (in alphabetical order): Nader Afshar, Derrick Ampy, Barry W. Anderson, Paul E. Andrighetti, Kaushik Barot, Ted Beckett, Pablo Bellver, Davide De Benedictis, Dave Busse, Mike Carlin, Max Chandler, John Clarke, Charlie Crook, Christian Cryder, Carlos Devoto, Cyrus Doomasia, Rodrigo Figueiredo, Jeff French, Brent Fry, Srinivas Ganti, Daniel L. Gleneck, Satish Gupta, Barton W. Hammond, Shannon Harvey, Judy Housman, Hong Hsu, Rob Hulsebos, Gary Janes, Brian Krahmer, Erik Bak Kristensen, Robert Laganière, Laurene O. Laidlaw, Allen Lee, Roger Lee, Tim Lethbridge, Charles Magid, Kurt Matthys, Phil McGlauchlin, Barry Middlebrook, Sadiq Mohammed, Thomas Moore, Raymond Naseef, Jaime Nino, Jeff Oakes, Sudesh Palekar, Greg Pearman, Jim Phipps, John Pinto, Jon Poploskie, Raj Prathinidhi, Andy Pryke, Tulsi Rai, Damith C. Rajapakse, Steven Ranieri, John Sargeant, Robert Allan Schwartz, Greg Scott, Joe Sharp, Mike Shivas, Eduardo Silva, Daniel Stainhauser, Steve Stephens, Christian Svenstrup, Oyvind Teig, Alan Thompson, Richard Tomlinson, Bruce Wallace, Dieter Wankmueller, Mark Waschkowski, Richard Williams, Joe Wissmann, Robert Wragg, Wayne Wylupski, and Hong Yan.



 



Acknowledgments from the First Edition


I want to thank Craig Larman, my most conscientious reviewer. He convinced me of the importance of patterns. Craig also provided me with much invaluable feedback on the use of UML and the presentation of patterns. His valuable suggestions greatly improved the way that I present the patterns in this book.


Jack Harich was another manuscript reviewer who made many useful suggestions about the organization of this book. He convinced me to expand my coverage of fundamental patterns. He also supplied the example that I use for the State pattern.


Brad Appleton provided me with the most voluminous and detailed comments.


The UIUC patterns group provided some insightful discussions for the patterns in this book. The participants in those discussions included Brian Foote, Ed Peters, Dragos Malonescu, Peter Hatch, Don Roberts, Joseph W. Yoder, Ralph Johnson, John Brant, James Overturf, Jean Pierre Briot, Eiji Nabika, Hiro Nakamura, and Ian Chai.


I also want to acknowledge some of my other reviewers, in particular Micheal Wheaton and Micheal Pair.



 



About the Author



Mark Grand is an Atlanta-based consultant with over 23 years of experience specializing in distributed systems, object-oriented design, and Java. He was the architect for the first commercial business-to-business (B2B) e-commerce product for the Internet. He is currently working on an open source framework for gluing components and programs into an application.


Mark Grand is most widely known for his best-selling Patterns in Java books. In addition to teaching Java for Sun and other training organizations, Mark has been involved in several large-scale commercial Java projects.


Prior to his involvement with Java, Mark spent over 11 years as a designer and implementer of fourth-generation languages (4GLs). His most recent role in that vein was as the architect and project manager for an electronic data interchange product. Mark has worked with a number of information technology (IT) organizations in capacities such as software architect, database architect, network designer and administrator, and Sun System administrator. He has been involved with object-oriented programming and design since 1982.














No comments:

Post a Comment