Object-Oriented Software Construction (Book/CD-ROM)2nd Edition
For any software engineer, developer or programmer interested in O-O software and programming.
This long-awaited revision retains the clarity, practicality and innovations that helped the first edition sell over 75,000 copies since 1988. Now over 1200 pages with a CD ROM full of object tools, this edition is fully revised and considerably expanded, making it THE definitive reference on the most promising software development in 30 years.
The definitive reference on the most important new technology in software!
“While the original version of OOSC is a classic, OOSC 2/E is destined to overshadow it and all other general introductions . . . literally an epic work.” —James C. McKim, Jr., Hartford Graduate Center
“Compelling. Extremely well-written and literate . . . I recaptured that same sense of intellectual excitement I felt reading the first edition for the first time.” —Paul Dubois, Lawrence Livermore National Laboratory, Editor, Scientific Programming Dept., Computers in Physics
“The definitive tome on Object-Orientation . . . the finest piece of writing and thinking about this vast subject . . . Bertrand has a lot to say of great importance and says it well in this significantly revised book.” —Richard Wiener, University of Colorado, Colorado Springs, Editor, Journal for Object-Oriented Programming
A whole generation was introduced to object technology through the first edition of Bertrand Meyer's OOSC. This long-awaited new edition retains the qualities of clarity, practicality and scholarship that made the first an instant best-seller. It has been thoroughly revised and considerably expanded. No other book on the market provides such a breadth and depth of coverage on the most important technology in software development.
SOME OF THE NEW TOPICS COVERED IN DEPTH BY THIS SECOND EDITION:
- Concurrency, distribution, client-server and the Internet.
- Object-oriented databases, persistence, schema evolution.
- Design by contract: how to build software that works the first time around.
- A study of fundamental design patterns.
- How to find the classes and many others topics of object-oriented methodology.
- How to use inheritance well and detect misuses.
- Abstract data types: the theory behind object technology.
- Typing: role, issues and solutions.
- More than 400 references to books, articles, Web pages, newsgroups; glossary of object technology.
- And many new developments on the topics of the first edition: reusability, modularity, software quality, O-O languages, inheritance techniques, genericity, memory management, etc.
PART A: THE ISSUES.1. Software Quality.
2. Criteria of Object Orientation.
PART B: THE ROAD TO OBJECT ORIENTATION.3. Modularity.
4. Approaches to Reusability.
5. Towards Object Technology.
6. Abstract Data Types.
PART C: OBJECT-ORIENTED TECHNIQUES.7. The Static Structure: Classes.
8. The Run-Time Structure: Objects.
9. Memory Management.
11. Design By Contract: Building Reusable Software.
12. When the Contract is Broken: Exception Handling.
13. Supporting Mechanisms.
14. Introduction to Inheritance.
15. Multiple Inheritance.
16. Inheritance Techniques.
18. Global Objects and Constraints.
PART D: OBJECT-ORIENTED METHODOLOGY: APPLYING THE METHOD WELL.19. On Methodology.
20. Design Pattern: Multi-panel Interactive Systems.
21. Inheritance Case Study: "undo" in an Interactive System.
22. How to Find the Classes.
23. Principles of Class Design.
24. Using Inheritance Well.
25. Useful Techniques.
26. A Sense of Style.
27. Object-Oriented Analysis.
28. The Software Construction Process.
29. Teaching the Method.
PART E: ADVANCED TOPICS.30. Concurrency, Distribution, Client-Server and the Internet.
31. Object Persistence and Databases.
32. Some O-O Techniques for Graphical Interactive Applications.
PART F: APPLYING THE METHOD IN VARIOUS LANGUAGES AND ENVIRONMENTS.33. O-O Programming and Ada.
34. Emulating Object Technology in non-O-O Environments.
35. Simula to Java and Beyond: Major O-O Languages and Environments.
PART G: DOING IT RIGHT.36. An Object-Oriented Environment.
PART H: APPENDICES.Appendix A: Extracts From the Base Libraries.
Appendix B: Genericity Versus Inheritance.
Appendix C: Principles, Rules, Precepts and Definitions.
Appendix D: A Glossary of Object Technology.
Appendix E: Bibliography Index.
- topics covered include:
Design by Contract
Abstract Data Types
- most comprehensive coverage of O-O technology ever (1250 pages with CD ROM) — from one of the founders.
- an epic O-O book destined to become the source for object technology.
- Introduces object technology gradually, comparing it to non-object-oriented approaches, and explaining the benefit of every object-oriented mechanism for software quality and productivity.
- Uses a high-level notation (based on Eiffel) to introduce the concepts, and explains how to implement them in various environments and languages such as C++, Java, Smalltalk, Ada 95, and even non-0-0 languages such as C, FORTRAN, Pascal and Ada 83.
- Contains an abundance of examples and several in-depth case studies.