People often ask me which is the best book to introduce
them to the world of OO design. Ever since I came across it, Applying UML and
Patterns has been my unreserved choice. Martin Fowler, author, UML
Distilled and Refactoring
The first edition of Applying UML and Patterns: An Introduction to
Object-Oriented Analysis and Design quickly emerged as the leading OOA/D
introduction; translated to many languages and adopted in universities and
businesses worldwide. In this second edition, well-known object technology and
iterative methods leader Craig Larman refines and expands this text for
developers and students new to OOA/D, the UML, patterns, use cases, iterative
development, and related topics.
The book helps newcomers to OOA/D learn how to think in objects by
presenting three iterations of a single, cohesive case study, incrementally
introducing the requirements and OOA/D activities, principles, and patterns that
are most critical to success. It introduces the most frequently used UML
diagramming notation, while emphasizing that OOA/D is much more than knowing UML
notation. All case study iterations and skills are presented in the context of
an agile version of the Unified Process -- a popular, modern iterative
approach to software development. Throughout, Larman presents the topics in a
fashion designed for learning and comprehension.
Among the topics introduced in Applying UML and Patterns are: * requirements
and use cases, * domain object modeling, * core UML, * designing objects with
responsibilities, * Gang of Four and other design patterns, * mapping
designs to code (using Java as an example), * layered architectures, *
architectural analysis, * package design, * iterative development, * the Unified
Process.Foreword by Philippe Kruchten, the lead architect of the Rational
Unified Process.
Too few people have a knack for explaining things. Fewer still have a
handle on software analysis and design. Craig Larman has both. John
Vlissides, author, Design Patterns and Pattern Hatching
This edition contains Larmans usual accurate and thoughtful writing. It
is a very good book made even better. Alistair Cockburn, author,
Writing Effective Use Cases and Surviving OO Projects