You are on page 1of 10

UNIT-III

ABSTRACT DATA TYPES


By
Mr. T. M. Jaya Krishna M.Tech
a Ty p e s
ra c tDat
Abst
The Concept of Abstraction

• View | representation = entity


– +des only most significant attributes
• In the world = prog. Lang. abstraction
– A weapon against complexity = programming
• Purpose – simplify programming process
– Two kinds
• Process abstraction
• Data abstraction
Introduction to Data Abstraction

• Evolution = data abstraction began (1960) w


1st version = COBOL
• Floating-Point as an Abstract Data Type:
– Provides means  create variables  store
floating-point data &
– Provides set = arithmetic operations 
manipulating objects = type
Introduction to Data Abstraction

• Evolution = data abstraction began (1960) w


1st version = COBOL
• User-Defined Abstract Data Types:
– Same characteristics as those = lang.’s defined
types like floating point type:
• Type definition allows prog. Units  declare variables
– Hides the representation = objects = type
• Set = operations  manipulating objects = type
Introduction to Data Abstraction

• Evolution = data abstraction began (1960) w


1st version = COBOL
• User-Defined Abstract Data Types:
– Same characteristics as those = lang.’s defined
types like floating point type:
• Type definition allows prog. Units  declare variables
– Hides the representation = objects = type
• Set = operations  manipulating objects = type
Design Issues for Abstract Data Types

• The form = container  interface  type


• whether abstract data types c parameterized
• Wh? access controls r provided & H? such
controls r specified
• The lang. designer must decide whether
– specification = type - - physically separate from its
implementation |
– a developer choice
Language Examples

• Lang.’s support data abstraction:


– Ada
– C++
– Objective-C
– Java
– C#
– Ruby
Language Examples

• Lang.’s support data abstraction:


– Ada
– C++
– Objective-C
– Java
– C#
– Ruby
Language Examples

• Lang.’s support data abstraction:


– Ada
– C++
– Objective-C
– Java
– C#
– Ruby

You might also like