Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your email address or mobile phone number.
Object-Oriented Software Construction (Book/CD-ROM) (2nd Edition) 2nd Edition
Use the Amazon App to scan ISBNs and compare prices.
Featured Functional Programming Titles
Check out these featured titles from O'Reilly Media and distributed publishers.
Frequently Bought Together
Customers Who Bought This Item Also Bought
Top Customer Reviews
(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.
(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.
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!
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.Read more ›
Other reviewers have mentioned that Meyer was unable to separate OO principles from the Eiffel language used as the book's notation. I disagree with that analysis, though perhaps he went further into describing the notation than was necessary to make the basic point in a few instances. As a reader, I was never left in confusion about which points were conceptual and which were notational.
I also appreciate the fact that this book was NOT written using a more popular language. The above criticism would have been more true but less noticed if he had. A more familiar langauge would have distracted readers from the real topic. It is useful to learn about priciples that are not directly supported in C++ or Java. Such a presentation helps you more effectively apply the features of the language that you are using and the other features can often be simulated when it seems useful to do so.
Most Recent Customer Reviews
Yes, this is the definitive tome which gets cited everywhere on Object-Oriented design for information hiding and design by contract. Read morePublished 13 months ago by Paul Jarrett
Thanks for all, it was a real pleasure to buy this product from you, I gladly recommended to all. Wish you the best!Published 14 months ago by thalassa
This book is truly a treatise for object oriented development. In fact, it's arguably the most comprehensive and profound OO development book on the market. Read morePublished 23 months ago by geewhiz
I knew what I was getting into when I got this book, i.e. that it was a large book that described OO principles while teaching Eiffel surreptitiously. Read morePublished on May 23, 2014 by Brad Neufeld
I found a copy of this book in a university library and had high hopes though a bit dismayed by the heft of the book at some 1220 pages. Read morePublished on March 28, 2014 by Richard Chambers
I am working on my programming skills and i was recommended this book. I have books for C and Design patterns.Published on October 30, 2013 by jason s arnold
Before now, I've only had "programming for dummies" books that take you through basic syntax, data types and some library objects and is generally very suitable for... Read morePublished on December 16, 2012 by Silverdawn
Single best book on software development I have read. Keep coming back, it repays study.Published on August 19, 2010 by Willem J. Homan
After reading the first couple of hundred pages, I felt something was not right. The notation the author used to explain his OO theories seemed like I was actually being forced to... Read morePublished on October 7, 2008 by Clint Pachl