Menu
Home Explore People Places Arts History Plants & Animals Science Life & Culture Technology
On this page
Object-Oriented Software Construction
Book by Bertrand Meyer

Object-Oriented Software Construction, also called OOSC, is a book by Bertrand Meyer, widely considered a foundational text of object-oriented programming. The first edition was published in 1988; the second edition, extensively revised and expanded (more than 1300 pages), in 1997. Many translations are available including Dutch (first edition only), French (1+2), German (1), Italian (1), Japanese (1+2), Persian (1), Polish (2), Romanian (1), Russian (2), Serbian (2), and Spanish (2). The book has been cited thousands of times. As of 15 December 2011[update], The Association for Computing Machinery's (ACM) Guide to Computing Literature counts 2,233 citations, for the second edition alone in computer science journals and technical books; Google Scholar lists 7,305 citations. As of September 2006[update], the book is number 35 in the list of all-time most cited works (books, articles, etc.) in computer science literature, with 1,260 citations. The book won a Jolt award in 1994. The second edition is available online free.

Unless otherwise indicated, descriptions below apply to the second edition.

Related Image Collections Add Image
We don't have any YouTube videos related to Object-Oriented Software Construction yet.
We don't have any PDF documents related to Object-Oriented Software Construction yet.
We don't have any Books related to Object-Oriented Software Construction yet.
We don't have any archived web articles related to Object-Oriented Software Construction yet.

Focus

The book presents object technology as an answer to major issues of software engineering, with a special emphasis on addressing the software quality factors of correctness, robustness, extendibility and reusability. It starts with an examination of the issues of software quality, then introduces abstract data types as the theoretical basis for object technology and proceeds with the main object-oriented techniques: classes, objects, genericity, inheritance, Design by Contract, concurrency, and persistence. It includes extensive discussions of methodological issues.

Table of contents

Preface etc.Part A: The issues

1 Software quality2 Criteria of object orientation

Part B: The road to object orientation

3 Modularity4 Approaches to reusability5 Towards object technology6 Abstract data types

Part C: Object-oriented techniques

7 The static structure: classes8 The run-time structure: objects9 Memory management10 Genericity11 Design by Contract: building reliable software12 When the contract is broken: exception handling13 Supporting mechanisms14 Introduction to inheritance15 Multiple inheritance16 Inheritance techniques17 Typing18 Global objects and constants

Part D: Object-oriented methodology:applying the method well

19 On methodology20 Design pattern: multi-panel interactive systems21 Inheritance case study: “undo” in an interactive system22 How to find the classes23 Principles of class design24 Using inheritance well25 Useful techniques26 A sense of style27 Object-oriented analysis28 The software construction process29 Teaching the method

Part E: Advanced topics

30 Concurrency, distribution, client-server and the Internet31 Object persistence and databases32 Some O-O techniques for graphical interactive applications

Part F: Applying the method in variouslanguages and environments

33 O-O programming and Ada34 Emulating object technology in non-O-O environments35 Simula to Java and beyond: major O-O languages and environments

Part G: Doing it right

36 An object-oriented environmentEpilogue, In Full Frankness Exposing the Language

Part H: Appendices

A Extracts from the Base libraryB Genericity versus inheritanceC Principles, rules, precepts and definitionsD A glossary of object technologyE Bibliography

Index

Notation

The first edition of the book used the programming language Eiffel for the examples and served as a justification of the language design choices for Eiffel. The second edition also uses Eiffel as its notation, but in an effort to separate the notation from the concepts it does not name the language until the Epilogue, on page 1162, where Eiffel appears as the last word. A few months after publication of the second edition, a reader posted on Usenet his discovery that the book's 36 chapters alternatively start with the letters E, I, F, F, E, L, a pattern being repeated 6 times. Also, in the Appendix, titled "Epilogue, In Full Frankness Exposing the Language" (in first initials), the first letters of each paragraph spell the same pattern.

See also

References

  1. Web search, August 2006

  2. "Object-oriented software construction (2nd ed.)". Association for Computing Machinery (ACM). 2024. https://dl.acm.org/doi/book/10.5555/261119#citings

  3. Citeseer, September 2006 http://citeseer.ist.psu.edu/articles.html

  4. "Previous Winners: Books". Dr. Dobb's Journal (DDJ). 2001. Archived from the original on 2009-05-25. https://web.archive.org/web/20090525043039/http://www.ddj.com/joltawards/prev_bks.htm

  5. Meyer, Bertrand (1997). Object-Oriented Software Construction (2nd ed.). Prentice-Hall. ISBN 978-0136291558. 978-0136291558