did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

We're the #1 textbook rental company. Let us show you why.

9780136291558

Object-Oriented Software Construction (Book/CD-ROM)

by
  • ISBN13:

    9780136291558

  • ISBN10:

    0136291554

  • Edition: 2nd
  • Format: Paperback
  • Copyright: 1997-04-03
  • Publisher: Prentice Hall

Note: Supplemental materials are not guaranteed with Rental or Used book purchases.

Purchase Benefits

  • Free Shipping Icon Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • eCampus.com Logo Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $139.32 Save up to $34.83
  • Buy Used
    $104.49
    Add to Cart Free Shipping Icon Free Shipping

    USUALLY SHIPS IN 2-4 BUSINESS DAYS

Supplemental Materials

What is included with this book?

Summary

This is, quite simply, the definitive reference on the most important development in software technology for the last 20 years: object-orientation.A whole generation was introduced to object technology through the first edition of this book. This long-awaited new edition retains the qualities of clarity, practicality and scholarship that made the first an instant best-seller, but has been thoroughly revised and expanded. Among the new topics covered in depth are: Concurrency, distribution, client/server and the Internet; object-oriented databases; design by contract; fundamental design patterns; finding classes; the use and misuse of inheritance; abstract data types; and typing issues. The book also includes completely updated discussions of reusability, modularity, software quality, object-oriented languages, memory management, and many other essential topics.All software developers and computer science students, worldwide.

Author Biography

BERTRAND MEYER is one of the pioneers of modern software engineering, whose experience spans both industry and academia. He has led the development of successful O-O products and libraries totaling thousands of classes. His Prentice Hall books include Object Success (an introduction to object technology for managers), Introduction to the Theory of Programming Languages, Eiffel: The Language, Object-Oriented Applications, and Reusable Software. He is a frequent keynote speaker at international conferences and consultant for Fortune 500 companies, editor of the Object-Oriented Series, associate member of the applications section of the French Academy of Sciences, chairman of the TOOLS conference series, and editor of the Object Technology department of IEEE Computer.

Table of Contents

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.
10. Genericity
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.
17. Typing.
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.
Epilogue.

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.
Bibliography.

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Excerpts

Preface Born in the ice-blue waters of the festooned Norwegian coast; amplified (by an aberration of world currents, for which marine geographers have yet to find a suitable explanation) along the much grayer range of the Californian Pacific; viewed by some as a typhoon, by some as a tsunami, and by some as a storm in a teacup a tidal wave is hitting the shores of the computing world. "Object-oriented" is the latest in term, complementing and in many cases replacing "structured" as the high-tech version of "good" . As is inevitable in such a case, the term is used by different people with different meanings; just as inevitable is the well-known three-step sequence of reactions that meets the introduction of a new methodological principle: (1) "it's trivial" ; (2) "it cannot work" ; (3) "that's how I did it all along anyway" . (The order may var y.) Let us have this clear right away, lest the reader think the author takes a half-hearted approach to his topic: I do not see the object-oriented method as a mere fad; I think it is not trivial (although I shall strive to make it as limpid as I can); I know it works; and I believe it is not only different from but even, to a certain extent, incompatible with the techniques that most people still use today including some of the principles taught in many software engineering textbooks. I further believe that object technology holds the potential for fundamental changes in the software industry, and that it is here to stay. Finally, I hope that as the reader progresses through these pages, he will share some of my excitement about this promising avenue to software analysis, design and implementation. "Avenue to software analysis, design and implementation" . To present the object-oriented method, this books resolutely takes the viewpoint of software engineering of the methods, tools and techniques for developing quality software in production environments. This is not the only possible perspective, as there has also been interest in applying object-oriented principles to such areas as exploratory programming and artificial intelligence. Although the presentation does not exclude these appli cations, they are not its main emphasis. Our principal goal in this discussion is to study how practicing software developers, in industrial as well as academic environments, can use object technology to improve (in some cases dramatically) the quality of the software they produce. Structure, reliability, epistemology and classification. Object technology is at its core the combination of four ideas: a structuring method, a reliability discipline, an epistemological principle and a classification technique. Thestructuring methodapplies to software decomposition and reuse. Software systems perform certain actions on objects of certain types; to obtain flexible and reusable systems, it is better to base their structure on the object types than on the actions. The resulting concept is a remarkably powerful and versatile mechanism called theclass,which in object-oriented software construction serves as the basis for both the modular structure and the type system. Thereliability disciplineis a radical approach to the problem of building software that does what it is supposed to do. The idea is to treat any system as a collection of components which collaborate the way successful businesses do: by adhering to contracts defining explicitly the obligations and benefits incumbent on each party. Abstract data types are discussed in chapter 6, which also addresses some of the related epistemological issues. Theepistemological principleaddresses the question of how we should describe the classes. In object technology, the objects des

Rewards Program