Most Helpful Customer Reviews
60 of 61 people found the following review helpful:
4.0 out of 5 stars
Don't be put off by some aspects of this book..., February 7, 1999
By A Customer
This review is from: Object-Oriented Software Construction (Book/CD-ROM) (2nd Edition) (Paperback)
A couple of aspects of this book might lead you *not* to read it. That would be too bad, since it contains valuable informaton. Specifically: (1) it spends a lot of time discussing particulars of the Eiffel language or the considerations leading Meyer to design Eiffel as he did. Observation: Even if you skip these parts, you could find useful information in the rest of the book, and many people may enjoy these insights into Meyer's approach. (2) the attitude is often rather dogmatic and judgmental. As one authority commented on the first edition, it "tends to confuse Eiffel with universal principles." Observation: though unfortunate, this does not detract from the value of the content. Further comments: (3) If you don't know any object oriented language, the book is a natural choice, since it is very clear and does not require prior knowledge of any particular language. (4) If you know another OO language, especially C++, you may get more for your time and money by choosing another book, at least to start. But you still could find valuable material here. For alternatives, you might check out the comments on Gamma's Design Patterns and Martin's Designing Object-Oriented C++ Applications: Using the Booch Method, or standard books by Booch, etc.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
31 of 31 people found the following review helpful:
5.0 out of 5 stars
Read it again, August 17, 1999
This review is from: Object-Oriented Software Construction (Book/CD-ROM) (2nd Edition) (Paperback)
The greatest achievement of this book is to show you, the reader, how easy, straightforward and appealing the OO technology is... once you have overcome the natural reaction of thinking it is "obvious". Hence my advice is to read it once, put it aside, and re-read it again. Learning OO efficiently means forgetting what you know (or think you know) about OO and trying to follow the Author's idea, and how his views on software engineering interact. You don't have to agree with the Author right away to learn from him. Of course, not everyone can use Eiffel. But only the concepts matter, not their actual implementation. And if you think this book's leitmotiv is "Look how Eiffel is the purest language that embodies all the necessary concepts" (how convenient!), then recall that Eiffel indeed started as a notation and only evolved towards an implementation after the fundamental concepts were layed down. Therefore, no wonder Eiffel seems a natural fit! The audience for this book is any experienced (5 years or more) software engineer, or software architects, whith an experience in designing complex systems and making them evolve over time. Some technical background is required though, otherwise you may only see things superficially and miss the underlying gems. Remember that OO is not a static technology, so to speak. Its natural support for encapsulation and evolution is what makes it an ideal technology in today's modern software management. Read this book again!
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
21 of 21 people found the following review helpful:
5.0 out of 5 stars
highly recommended as a first introduction to OOP, May 27, 2005
This review is from: Object-Oriented Software Construction (Book/CD-ROM) (2nd Edition) (Paperback)
When writing a treatise on computer programming one has to strike a balance between providing a book that is both useful (which usually means writing within the context of a compilable programming language), but general enough so as not to oversimplify or truncate parts of the theory because it is not represented by the chosen language. In OOSC2 Meyer does just this, by providing a sound and general introduction to object-oriented programming, while using the Eiffel language for purposes of notation and practical programming examples.
Meyer has a very engaging writing style: very clear, with lots of good (and humorous : ) examples. And the Eiffel language itself seems quite simple, readable (it was obviously influenced by ADA) and brilliantly designed (think of Java, but with multiple inheritance, generics, and without the run-time inefficiency of the java virtual machine).
But whether you program in Eiffel, Java, C#, or C++, OOPSC2 has alot to offer in terms of OO software design, and a good understanding of the issues behind inheritance, polymorphism, the importance of static typing, and dynamic binding.
For example, I program in C++, and this book has helped me clearly understand the object-oriented features of the language, because in clearly explaining the principles, it helped me understand the intentions of the C++ language designers.
May be my only complaint, at perhaps half a star, is the fact that Meyer often weighs in heavily against other languages for their shortcomings, while going easy on his own Eiffel language. For example, he failed to give an objective analysis regarding the run-time costs of garbage collection. Indeed, the chapter on garbage collection seemed more of handwaving defense of the fact that Eiffel uses this technology. A presentation of run-time empirical studies for various applications would have been much more welcomed. However I believe that the benefits of this book far outweigh the occasional partisanship shown towards Eiffel. I truely believe that Meyer favors Eiffel because he believes in it more on the basis of principle than on profit (he does own a software company that supports Eiffel development tools).
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
|