|
|||||||||||||||||||||||||||||||||||
|
39 Reviews
|
Average Customer Review
Share your thoughts with other customers
Create your own review
|
|
Most Helpful First | Newest First
|
|
63 of 67 people found the following review helpful:
4.0 out of 5 stars
A book on *using* OOP,
This review is from: Object-Oriented Analysis and Design with Applications (2nd Edition) (Hardcover)
After reading some of the less flattering reviews of this book, it seems that many reviewers were expecting a book on object-oriented programming in general. If you want to learn how program, this is not the book for you. This book is about *using* object-oriented techniques to architect systems. The content you should take away from it is entirely independent of any particular language.Some of the steps in becoming a good OOP programmer/architect are listed below (1 & 2 are often combined): 1. learn an OO language Step three is where this book and, for example, books on object-oriented design patterns (GoF) come in. Just because because you know what classes and inheritance are does not mean you will use them effectively. I cannot emphasise the importance of step 3 enough when architecting applications. If you are a coder, simply knowing OOP is fine, as an architect it is simply not enough. In terms of organization, the book starts simple and builds on previous chapters in a very organized way. In the first chapter Booch delves into the philosophy of OOP and complex systems. This kind of broad introduction serves well as a way to show where OO analysis and design stand relative to other engineering disciplines. The only problem I had with the book is the fact that it is a bit dated. It does not use UML (although what it uses is very similar) and even has a chapter devoted to client/server computing. (however, it also has a chapter on AI). If it were not for this its datedness, I would have easily given it 5/5. Overall a great book from one of the father's of modern objected oriented analysis/design.
47 of 50 people found the following review helpful:
5.0 out of 5 stars
A beacon of light in a world of darkness,
This review is from: Object-Oriented Analysis and Design with Applications (2nd Edition) (Hardcover)
After reading the other reviews I have a few comments.1. In 1994 when this book was published Java was in development and had no ways near the popularity it has today. (According to Cay Hortsmann Java did not burst onto the scene until late 1995) 2. Bertrand Meyer's book is great and contains valuable wisdom, but all of its examples are in Eiffel. While Eiffel is a great language what are my chances finding a job writing Eiffel. But really all of the above comments are pointless. The fact of the matter is that the concepts in an Object-Oriented book should be language independent. However, to be most effective authors reinforce abstract ideas by including concrete examples. Which means the author must pick a language or write in pseudo code. Booch's book is a valuable reference to be used in learning how to apply Object-Oriented concepts to the analysis and design portion of the software development process. It is up to you to know your own problem domain or work with experts who do. I personally write software that deals with weapon trajectories and weapon effects and just because the book does not have any examples on this domain does note mean it is not valuable. The job of this book is to teach me how to think in terms of objects and how to find and design my classes and class hierarchies. It succeeds, Thanks Grady Booch.
21 of 23 people found the following review helpful:
3.0 out of 5 stars
Too many words,
Amazon Verified Purchase(What's this?)
This review is from: Object-Oriented Analysis and Design with Applications (3rd Edition) (Hardcover)
This book's reputation as one of the bibles of OOAD is probably deserved because (to someone relatively new to it) the essentials seem to be thoroughly covered. It just seems too much like wading through muck to find them.The problem begins at the very beginning; on the first pages of the preface. In describing changes between publication of the second edition and this third edition, the author lists "robots are cruising on the surface of Mars" and "Personal hovercraft are available." Tongue-in-cheek? Unfortunately, no, unless it's firmly planted there. As the book continues, the reader all too often wants to start skimming as paragraph after paragraph, sometimes page after page, of non-essential prattle clouds the essentials. For journeyman designers and developers, sections on the topology of old-fashioned procedural languages, on the importance of documentation, task planning, release planning (twice!) and more may be frustrating drags on learning the essentials of thinking through a good design and taking it to the doorstep of implementation. A highly-simplified greenhouse application is used for examples throughout the first part of the book, leaving too many more-common scenarios unexplored and occasionally trapping skimmers who have not captured every concept in the design of that application along the way. Late chapters illustrate some concepts with (finally!) other applications including an all-important (for many of us) web application as well as applications for satellite tracking, data aquisition for a weather station, artificial intelligence, and a control system for traffic management. Interesting, but again wordy and by the time you get there you're exhausted! I did learn from this book, but I'm still looking for The Book that efficiently teaches OOAD, and I've read four or five already. So far I've learned more from a couple of implementation-level books: Martin Fowler's superb book Refactoring: Improving the Design of Existing Code, and his UML Distilled. These have been very instructive in part because Fowler's style is lean and very clear, un-clouded by distracting non-essentials. I've just ordered Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development by Craig Larman. Fingers are crossed, maybe that will be The Book.
13 of 13 people found the following review helpful:
5.0 out of 5 stars
Required reading for C++ developers,
By Tony Kay (Nashville, TN) - See all my reviews
This review is from: Object-Oriented Analysis and Design with Applications (2nd Edition) (Hardcover)
I bought this book due to a positive comment in B. Stroustrup's "The C++ Programming Language" bibliography. I was not dissapointed. This book covers everything from terminology, to useful notations, to actual application of techniques. I teach C++ as part of my job, and have found many design books to be shallow works which cover proprietary notations, with a few cookbook recipes thrown in. These books commonly show a lack of real development experience, and are more theory than practice. This is not the case with this book, which combines work from many different sources. It also consistently includes references to alternative opinions when covering controversial material. Mr. Booch stresses the need for intelligent, and sometimes ad hoc decisions which are based on good design principles, and are refined as a project evolves. But he doesn't stop there. He explains useful techniques and thought processes which are the primary tools of good OO A&D. This is one of the best design books I have seen to date.
13 of 16 people found the following review helpful:
4.0 out of 5 stars
An important book,
By A Customer
This review is from: Object-Oriented Analysis and Design with Applications (2nd Edition) (Hardcover)
Ignore the remarks about ego or over-rated, I found this book not easy to understand for a beginning student of Object Oriented Methodology, and I will have to re-read it. This is a very important book for all concerned, and is often quoted by Steve McConnell in his equally important "Code Complete" and "Rapid Development." Grady Booch refers quite often to real world object-oriented application models, to thinking along that line for solving real-world problems, and uses plenty of code examples from several different OOP languages including Smalltalk and C++. The goals of the book as outlined in the preface are to provide a sound understanding of the fundamental concepts of the object model, to facilitate the mastery of the notation and process of object-oriented analysis and design, and to teach the realistic application of object oriented development within a variety of problem domains. Last time I looked, this book is a listed selection for ICCP CCP certification, the mother of all certifications, and the choice of U.S. Armed Forces and Government Agencies. I personally prefer more interactive type of books that ease the student into the subject.
6 of 7 people found the following review helpful:
4.0 out of 5 stars
A classic, but a little difficult to read,
By JB (USA) - See all my reviews
This review is from: Object-Oriented Analysis and Design with Applications (2nd Edition) (Hardcover)
The author has what I would call an "academic" writing style which makes the book a bit more difficult to read than it needs to be. It is full of great information, but sometimes you will have to read a paragraph several times to fully understand it. This is not necessarily bad, but if you prefer a more practical or conversational style you should probably find another book. The book thoroughly covers all of the fundamental concepts of object oriented design in a language-independent way. Although there are some C++ code samples they are brief and it is not necessary for the reader to have a C++ background to learn the OO concepts presented in the book. Even though there are newer books out there you still should consider this one because the concepts presented such as encapsulation and polymorphism have not changed and are well covered in this classic work.
10 of 13 people found the following review helpful:
5.0 out of 5 stars
Great , tough Book, not for beginners or Non C++ programmers,
By
This review is from: Object-Oriented Analysis and Design with Applications (2nd Edition) (Hardcover)
Mixed opinions about the book. The author never claims that beginners can easily understand nor he warrants that you need not know C++. It may take sevaral months or years to read this book. If you say you know this book for 100%, you are only few steps away from Booch's level. His process is great if we have the time, patience and comfort to follow it and apply it. You should have some prior knowledge of OO to understand Booch's language. Of course C++ basics. Though the chapter on Booch Notaion is dated, you still need to read it to follow the remaining chapters. But if you have read UML, booch notation is not tough to understand. I wish he re-writes with additional Java examples and gives some business applications like banking/insurance examples rather than Gardening Sensors and Heaters, and also drop notations chapter and assume that readers know UML. It will be great if he guides us how his process fits into the internet era within tons of frameworks/patterns around.
7 of 9 people found the following review helpful:
5.0 out of 5 stars
Sergio L. Fonseca,
By Sergio L. Fonseca (Rockaway Park, New York USA) - See all my reviews
This review is from: Object-Oriented Analysis and Design with Applications (2nd Edition) (Hardcover)
If you want to understand OO(object orientation)/OOA/OOD, this is THE place to start. Booch writes in a clear, concise and interesting way. That's very hard to do in technical writings. The chapters are organized in a very thoughtful and correct way. In many ways, his Booch notation (presented in this book) is even better than the current version of UML for understanding how the notation applies to classes and objects. You may know C++ or Java language implementations, but the best foundation is a generic knowledge of OO. This book goes a long way to presenting this knowledge. Go for it!
13 of 18 people found the following review helpful:
3.0 out of 5 stars
Over rated,
By SeanFurl (San Francisco) - See all my reviews
This review is from: Object-Oriented Analysis and Design with Applications (2nd Edition) (Hardcover)
I read this book about five years ago from cover to cover, omitting a couple of the extended examples. Honestly, it did not make me significantly better at designing programs or analyzing requirements. It's been said there's no silver bullet for designing programs, but considering this book's wide reputation it ought to be helpful. And I don't think it helped me except I guess in a subtle slight deepbackground way. Certainly there are things in the book that are worth knowing but this is not the best place to get them from, imho.
2 of 2 people found the following review helpful:
5.0 out of 5 stars
Essential Reading in Object Oriented Analysis and Design (OOAD),
By
Amazon Verified Purchase(What's this?)
This review is from: Object-Oriented Analysis and Design with Applications (3rd Edition) (Hardcover)
This 3rd edition is the eagerly and long awaited update to the 2nd edition which was published in 1994. It provides thorough and practical coverage of concepts, techniques, notations and examples for modern object-oriented analysis and design. The material cov-ered draws upon a solid foundation of theoretical work but is con-sistently pragmatic in approach. This book provides an essential body of knowledge for professionals responsible for the analysis and design of complex systems.As with the second edition, the book is organized into three major sections - Concepts, Method and Applications. Concepts intro-duces the fundamental principles of object-oriented analysis and design (OOAD) such as creating abstractions, objects and classes, and how to address the complexities found in a variety of systems. The Method section focuses on how to analyze and design com-plex systems with an emphasis on using UML 2. This edition follows a similar format and addresses many of the same topics as its predecessor but varies in several areas. Most noticeably, the famous "clouds" and other Booch notations used in the 2nd edition have all been replaced with UML. The UML dia-grams also make frequent use of the newer UML 2 notations such as frames on sequence diagrams and ports on component diagrams. As a whole, the new set of applications nicely cover a variety of challenges found in modern systems design. There are also few-er code examples in this edition. However, as the frequent use of Courier font suggests, the text still sits conceptually just slightly above code level when that is necessary. This book is very well organized, written and edited. For example, in the Methods section, the chapter on Notation doesn't merely plod through the syntax of various shapes and line styles but ex-plains each diagram set with regard to intended use and contribu-tion to object-oriented models. There are also clear and informative distinctions between essential techniques and more advanced concepts. Though some concepts clearly build upon each other, the reader is not forced to read the material in a certain order - e.g., references to material in other chapters are clearly marked and summarized. Diagram styles vary somewhat from chapter to chapter but, as ex-plained in the preface, this is deliberate in order to familiarize the reader with the output of commonly used tools. More extensive or sharply defined distinctions between what is common practice as compared to alternative approaches, including the risks or benefits of either, would have been nice to have but this omission doesn't detract from what is a great book overall. Though intended primarily for developers and architects of soft-ware systems, the material presented would also be highly valuable to analysts in non-engineering roles such as business systems ana-lysts. It is also a worthwhile read for those working on systems without a software emphasis. Analysts, designers and architects of complex systems, will find this text provides broad and deep coverage in the current practice of OOAD. As a result, it should regarded as mandatory reading for professionals in those fields. [...] |
|
Most Helpful First | Newest First
|
|
Object Oriented Analysis and Design with Applications (Benjamin/Cummings series in Ada and software engineering) by Grady Booch (Hardcover - Sept. 1990)
Used & New from: $0.01
| ||