Skip to content

Introduction to Object-Oriented Programming

Best in textbook rentals since 2012!

ISBN-10: 0201760312

ISBN-13: 9780201760316

Edition: 3rd 2002

Authors: Timothy Budd

List price: $193.32
Blue ribbon 30 day, 100% satisfaction guarantee!
what's this?
Rush Rewards U
Members Receive:
Carrot Coin icon
XP icon
You have reached 400 XP and carrot coins. That is the daily max!

Description:

In An Introduction to Object-Oriented Programming, Timothy Budd provides a language-independent presentation of object-oriented principles, such as objects, methods, inheritance (including multiple inheritance) and polymorphism. Examples are drawn from several different languages, including (among others) C++, C#, Java, CLOS, Delphi, Eiffel, Objective-C and Smalltalk. By examining many languages, the reader is better able to appreciate the general principles that lie beyond the syntax of the individual languages.This new edition presents examples drawn from a wider range of languages, including Eiffel, CLOS, and Python in addition to the mainstream languages, as well as extensive…    
Customers also bought

Book details

List price: $193.32
Edition: 3rd
Copyright year: 2002
Publisher: Pearson Education
Publication date: 10/12/2001
Binding: Paperback
Pages: 640
Size: 6.55" wide x 9.40" long x 1.55" tall
Weight: 2.486
Language: English

Thinking Object-Orineted
Why is OOP Popular? Language and Thought
A New Paradigm
A Way of Viewing the World
Computation as Simulation
A Brief History
Layers of Abstraction
Layers of Abstraction
Other Forms of Abstraction
A Short History of Abstraction Mechanisms
Object-Oriented Design
Responsibility Implies Noninterference
Programming in the Small and in the Large
Why Begin with Behavior
A Case Study in RDD
CRC Cards-Recording Responsibility
Components and Behavior
Software Components
Formalize the Interface
Designing the Representation
Implementing Components
Integration of Components
Maintenance and Evolution
Classes and Methods
Encapsulation
Class Definitions
Methods
Variations on Class Themes
Messages, Instances, and Initialization
Message-Passing Syntax
Accessing the Receiver from Within a Method
Object Creation
Pointers
Memory Recovery
Constructors
Constant Values
Destructors and Finalizers
Metaclasses in Smalltalk
A Case Study: The Eight Queens Puzzle
The Eight-Queens Puzzle
Using Generators
The Eight-Queens Puzzle in Each Language
A Case Study: A Billiards Game
The Elements of Billiards
Graphical Objects
The Main Program
Using Inheritance
Inheritance and Substitution
An Intuitive Description of Inheritance
Subclass, Subtype, and Substitution
Interfaces
Forms of Inheritance
Inheritance in Various Languages
Inheritance and Constructors
The Benefits of Inheritance
The Costs of Inheritance
Case Study - A Card Game
The Class Playing Card
Data and View Classes
The Game
Card Piles-Inheritance in Action
Playing the Polymorphic Game
The Graphical User Interface
Subclasses and Subtypes
Substitutability
Subtypes
The Substitutability Paradox
Is This a Problem? Dynamically Typed Languages
Pre and Post-conditions
Scandinavian Semantics
Static and Dynamic Behavior
Static versus Dynamic Typing
Static and Dynamic Classes
Static versus Dynamic Method Binding
Implications of Substitution
Memory Layout
Assignment
Copies and Clones
Equality
Multiple Inheritance
Inheritance as Categorization
Problems Arising from Multiple Inheritance
Multiple Inheritance of Interfaces
Inheritance from Common Ancestors
Inner Classes
Polymorphism and Software Reuse
Polymorphism in Programming Languages
Mechanisms for Software Reuse
Efficiency and Polymorphism
Will Widespread Software Reuse Become Reality
Overloading
Type Signature and Scopes
Overloading Based on Scopes
Overloading Based on Type Signatures
Redefinition
Polyadicity
Multi-Methods
Overr