Rating:  Summary: Great Book Review: One of the things you'll find in it that is not stressed enough in other books about OOD is state management. Programmers often understand basic concepts of how to design objects and what attributes they should have; few are good at taking complex models that involve state transformations (not just talking FSMs) and coming out with a solid design. Now that the middle tier is taking over, people need to realize that the concepts of data integrity, transactional integrity, even simple transformational integrity are part of the requirements of a good object oriented design. This book is one of the few that even addresses the issue.
Rating:  Summary: don't buy this book if you are a professional OO-Developer Review: Probably I should have paid more attention at the word "fundamentals" in the title, before buying this book. The book contains a pretty basic and superficial overview of UML (Part 2), stuffed in the middle of an introduction to OOD/OOP (Part 1), and a description of good OOP principles (Part 3). Skipping preambles, jokes, and trivial examples, the juicy information about UML can be read through in a couple of hours. If you are familiar with OOP and you just need a professional tutorial on the UML formalism, you'd better look fo another book.
Rating:  Summary: Not a complete OO or UML fundamentals book Review: The author uses his own dialect of UML in too many places, Skips Use-Cases all together. The examples are too simplified. It is not fundamental OO because he doesn't define OO terminology as it is in the standards. He gives his oppinion on everything and this colors his explanations and examples. If you are looking for a beginners UML or OO forget about this book. If you like to read another angle on some parts of the OO or some UML diagrams then this is your book.
Rating:  Summary: Displays a healthy perspective on Object-Oriented Design Review: The major portion of my information technology career of fourteen years has been based in structured design and programming. I've spent the last few years programming in Visual Basic, which is object-based. I've also done a modicum of programming with object-oriented languages (C++ and Java). I jumped into OO programming before taking any design courses (sound familiar?) and eventually felt compelled to remedy the situation by reading a book on OOD. Meilir Page-Jones' book was not a disappointment. I believe that designers and programmers of all experience levels can benefit from reading his book. Newcomers will get the right introduction to OOD while experienced developers will be challenged to reexamine their approach to software construction. "Fundamentals of Object-Oriented Design" is composed of three parts. In part 1 the author provides an overview of Object-Oriented Design (OOD) by defining key terms and then providing a brief summary of the evolution of software development. This orientation prepares the reader for the rest of the discussions in the book. Part 2 is a summary of the most often used portions of UML syntax. It's not intended to be an exhaustive description. He leaves out those parts of the language that are used infrequently. Part 3 is a compendium of principles of object-oriented design. The salient benefits of the book are the clear, cogent arguments Mr. Page-Jones articulates in support of the principles he espouses, which are rooted in a very practical approach toward software development. Among other things, you can use most of the principles as bases for code reviews. He also peppers the discussions with entertaining anecdotes, realizing that this heavy stuff needs periodic comic relief. His definitions of OO terminology are concise and he avoids unnecessary abstractions. I recommend that you add this book to your reference library. There are many zealots for OOD and this book helps to put things in their proper perspective.
Rating:  Summary: A seamless treatment of two complex topics Review: The Unified Modeling Language or UML forms a natural relationship with object-oriented programming or OOP. Using the metalanguage, UML, in simultaneous combination with the descriptive language, OOP, is now considered to be the optimal way to build large systems. Furthermore, iterating through several versions is generally conceded to be superior to the previous practice of completing one stage before proceeding to the next. Therefore, it is natural for one to study the two simultaneously, and in an incremental manner. However, that is not an easy task, as the UML is large and OOP is clearly a paradigm shift from previous ways of building software. Page-Jones navigates his way through the myriad complexities of the two very well, doing a superb job of introducing both. The emphasis is necessarily on the principles of OOP rather than the UML, as that is the true point of the book. It would have been easy to lose that focus, but the UML is reserved for its proper place as the descriptor. All of the basic principles of OOP are presented in a wry style with plenty of humor. The tone was set in the beginning where he makes a bovine metaphor describing the ways one can approach the process of building systems. When it comes time to milk a cow, do we tell the milk to exit the cow or the cow to release the milk? In modeling, both approaches can be considered equally valid until proven otherwise. Each chapter terminates with a series of problems, where the solutions are verbal or in simple pseudo-code. The solutions are detailed, providing solid reinforcement of the topics. If you are new to OOP or simply need a tune-up, then this book is definitely worth reading. It is quite likely that it will be on my list of top ten books for the year.
Rating:  Summary: Great for Experienced Programmers looking to learn OO Design Review: This book is just what I was looking for! I am an experienced programmer, but have not worked in Object Oriented techniques before. This gave me the ability to acquire the new concepts and the new jargon, by showing how they were similiar and evolved from concepts I learned in structured programming and design. (The new ideas did not spring out of nowhere...) This book was not too low (what is a program? a program is...) and not too high (Realization is different from dependency, generalization and association...) but just right.
Rating:  Summary: Java Programmer - 2 years of experience. Review: This book is simply great. Not only the descriptions and explanations are clear, the reader can find many practical examples as well. There is much more to this book then UML, all fundamentals of OO programming and design are explaned in detail. This book is a must-to-have for all OO folks out there, put it on the shelf next to "Design Patterns". By the way, the author also has excellent sense of humor.
Rating:  Summary: Very enjoyable and informative Review: This is a book more about object-oriented design then UML. The first section covers the absolute basics of what OOD is. The middle portion teaches the reader how to use UML to depict their designs. The final section is a set of instructive essays, warning the reader of the problems and pitfalls that often occur in OOD, and how to avoid them. Page-Jones has an excellent sense of humour, and his engaging style makes this an incredibly enjoyable book to read. You won't even notice that you're actually learning something! I also like the fact that he doesn't use a single programming language for his examples, instead trying to be generic, or alternatively, giving examples from C++, Java, Eiffel, and Smalltalk in turn. This makes the book accessible for all OO designers. I wouldn't recommend this book to an experienced OO designer who wishes to learn UML. That's not the intended audience. For a new comer, who wishes to learn good design techniques from the start, this is the book for you.
Rating:  Summary: Best Book About Object Orientation Around Review: This is another of Meilir Page-Jones gems. Its enjoyable to read, concise and absolutely trustworthy. Some might find it a little abstract - I just love it. It clearly states what's what in this vague field. If you want to learn UML as the main goal you should turn to Fowlers landmark book. If you want an alternative turn to Bertrand Meyers "Object oriented software construction". I know it has very, very many pages but its excellent and the second best book around.
Rating:  Summary: Clear, Understandable, Fun, Wonderfully Explained Review: Very well written and extremely informative. It's giving me just what I hoped for: Clearly expressed key principles of OO design. The UML stuff is limited - not good for someone really wanting to learn UML, but great for someone wanting to get started and know the most useful stuff for every day work.
|