Lecture 15: Abstract Data Type

 0    12 schede    up804653
Scarica mp3 Stampa Gioca Testa il tuo livello
 
Domanda English Risposta English
what is abstraction
inizia ad imparare
Abstraction means separating the top level usefulness of a thing from the details of its implementation so that the programmers is freed from worrying about details.
what are the 2 modern methods for abstraction
inizia ad imparare
control/process abstraction and data abstraction
explain control/process abstraction
inizia ad imparare
Process abstraction is necessary for achieving program modularity, which means dividing up a system into components or modules, each of which can be designed, implemented, tested, reasoned about, and reused separately from the rest of the system.
what is Data Abstraction
inizia ad imparare
Data abstraction enforces a clear separation between the abstract properties of a data type and the concrete details of its implementation.
what does an ADT consist of
inizia ad imparare
a set of data, and necessary operations on the data.
what are Abstract Data Types (ADTs)
inizia ad imparare
An abstract data type is a user-defined data type
give an example of anADT
inizia ad imparare
For example, List is a widely used data structure Data: a collection of items, each item has a position in a sequential order. Operations: add/remove an item, sort the items,...
what must be decieded when designing an ADT
inizia ad imparare
a set of core operations for users to use the data type. The core operations support the basic uses of the data
what are the basic rules for ADT design
inizia ad imparare
[1] Basic information should not be difficult to obtain [2] The set of operations should be adequate [3] Each operation should have a well-defined purpose [4] Have a few simple operations that can be combined to perform more complex operations.
what do you need when Implementing an ADT
inizia ad imparare
To implement an ADT, you need to choose: a data representation and algorithms.
what is ADT data representation
inizia ad imparare
[1] internal storage container is used to hold the items in the collection, e. g an array [2] users of the ADT need not know the representation [3] users not allowed to tamper with the representation [4] all data private [5] use accessors and mutators
what is an Algorithm
inizia ad imparare
[1] An algorithm for each of the necessary operations, e.g., an algorithm for sorting a list. [2] All auxiliary (helper) operations that are not in the contract should be private.

Devi essere accedere per pubblicare un commento.