Term
|
Definition
an interface and its associated expected behavior, usually implemented as an object containing some data (the internal representation and a set of methods implementing the interface) |
|
|
Term
|
Definition
a mechanism for hiding detail |
|
|
Term
abstraction barrier (or interface) |
|
Definition
a set of operations (or methods of an object) that is used to access and or operate on the internal representation |
|
|
Term
|
Definition
a method for extracting information from an object |
|
|
Term
|
Definition
holds the information on the call stack that is needed for one procedure call |
|
|
Term
|
Definition
the values that are passed into a procedure or method |
|
|
Term
|
Definition
a location in memory; each data item is stored at a particular memory address |
|
|
Term
|
Definition
the idea of how to carry out a computation, may be implemented as a procedure |
|
|
Term
|
Definition
the simplest case, usually the termination case for a recursive algorithm |
|
|
Term
|
Definition
a data structure in which every node refers to a left subtree and a right subtree such that all values in the left subtree are smaller than the value in the node and all elements in the right subtree are greater than (or equal to) the value in the node. The top node is called the root. The nodes with no children (left and right subtrees empty) are called leaves. |
|
|
Term
|
Definition
the relation between a symbol and its value |
|
|
Term
|
Definition
something that can be used without knowing how it works inside |
|
|
Term
call stack (or execution stack) |
|
Definition
the part of memory containing the bindings of formal parameters to actual values for procedure calls |
|
|
Term
|
Definition
a linked list in which the rear item refers back to the head item |
|
|
Term
|
Definition
a definition of a type of object |
|
|
Term
|
Definition
a collection of data treated as a single unit; has a constructor, accessors, and an identifier |
|
|
Term
|
Definition
|
|
Term
|
Definition
a method used to create a new object |
|
|
Term
|
Definition
information that is manipulated by a computation |
|
|
Term
|
Definition
a method for providing a natural, high-level semantics for (a collection of) data while surpressing the details of the internal representation |
|
|
Term
|
Definition
a model of computation in which each computational component is represented as a box whose arguments and results may be connected from and to other boxes |
|
|
Term
|
Definition
a mechanism for hiding and protecting information |
|
|
Term
|
Definition
a "place" in which expressions are evaluated, usually with an associated set of bindings |
|
|
Term
|
Definition
|
|
Term
|
Definition
a diagram showing the operators and operands of an expression |
|
|
Term
|
Definition
the parameters declared for a method of procedure, into which the actual parameter values will be copied |
|
|
Term
|
Definition
memory that had been allocated but is no longer reachable by a process |
|
|
Term
|
Definition
claiming unreachable storage for reuse |
|
|
Term
|
Definition
an area of memory from which space for dynamic structures are allocated |
|
|
Term
|
Definition
a notation in which operators appear between the operands, as in: 3 + 5 |
|
|
Term
|
Definition
the variables holding the internal representation of an object |
|
|
Term
|
Definition
(see abstraction barrier) |
|
|
Term
|
Definition
the data representation (stored in the instance variables) of an object |
|
|
Term
|
Definition
a repeated computation, usually performed on a range of values or on the elements of a data structure |
|
|
Term
|
Definition
an object that contains a reference to internal items of a data structure in order to support iterating of over the data in those items without exposing the internal representation of the structure itself |
|
|
Term
|
Definition
a data structure consisting of a sequence of values linked together in memory by a chain of references |
|
|
Term
|
Definition
the program will eventually provide a result |
|
|
Term
|
Definition
a programming language construct that supports iteration (for example a WHILE loop) |
|
|
Term
|
Definition
a property of, or relationship among, the values of the loop variables such that the property is true both initially and after each iteration of the loop; together with the termination condition loop invariant is useful in demonstrating the correctness of a loop |
|
|
Term
|
Definition
a place in the computer where values are stored for later retreival |
|
|
Term
|
Definition
a way of thinking about object-oriented programming in which objects communicate by sending messages to each other (to invoke methods on them) |
|
|
Term
|
Definition
an operation that one may invoke on an object |
|
|
Term
|
Definition
the act of changing the values of variables or data structures |
|
|
Term
|
Definition
an abstraction that encapsulates data and knows how to operate on the data |
|
|
Term
|
Definition
the way values are passed to a method or procedure |
|
|
Term
|
Definition
treating objects of many types in a uniform way |
|
|
Term
|
Definition
an expression that evaluates to either true or false |
|
|
Term
|
Definition
a notation in which operators appear before the operands as in (3, 5) |
|
|
Term
|
Definition
data, such as numbers ans symbols, that are built into language |
|
|
Term
|
Definition
a description of an activity to be carried out (by a computer) |
|
|
Term
|
Definition
a language used to write a procedure or other description of a computation |
|
|
Term
|
Definition
an activity (carried out by a computer) |
|
|
Term
|
Definition
a data structure with first-in-first-out behavior, supporting the operations enqueue (to insert) and dequeue (to remove) |
|
|
Term
|
Definition
a recasting of one problem as another (somewhat different) problem |
|
|
Term
|
Definition
a reduction of a problem to another (typically smaller) instance of the same problem |
|
|
Term
|
Definition
a property that holds true of the internal representation initially and after the completion of each method |
|
|
Term
|
Definition
the meaning of an expression |
|
|
Term
|
Definition
a data structure with last-in first-out behavior, supporting the operations push (to insert) and pop (to remove) |
|
|
Term
|
Definition
stored information (associated with a process) |
|
|
Term
|
Definition
a class that extends another class, possibly by adding new methods or overriding existing methods |
|
|
Term
|
Definition
a model of computation in which expressions are successively replaced by their values until a final result is reached |
|
|
Term
|
Definition
a name used to denote a value |
|
|
Term
|
Definition
the notation used to express an idea |
|
|
Term
|
Definition
a form of recursion in which the result of the recursive call is the final answer; no combining is done on the result of the recursive call |
|
|
Term
|
Definition
a predicate that becomes true when a computation ends |
|
|
Term
|
Definition
a design technique in which a problem is described at a highly abstract level and then broken down into finer and finer details until all pieces are filled in |
|
|