Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Data Abstraction & Function in CMSC 433 - Programming Language Technologies - Prof. Atif M, Study notes of Programming Languages

This document from the spring 2007 semester of cmsc 433 introduces the concept of data abstraction, explaining it as the combination of objects and operations. Different categories of operations, including constructors, mutators, and observers. The abstraction function is discussed as the specification for an abstract data type's representation, and the importance of having one is emphasized. The document also covers representation invariants, their role in ensuring well-formed instances of abstract data types, and methods for implementing and checking them.

Typology: Study notes

Pre 2010

Uploaded on 02/13/2009

koofers-user-jil
koofers-user-jil 🇺🇸

4

(1)

10 documents

1 / 2

Toggle sidebar

Related documents


Partial preview of the text

Download Data Abstraction & Function in CMSC 433 - Programming Language Technologies - Prof. Atif M and more Study notes Programming Languages in PDF only on Docsity! CMSC 433 – Programming Language Technologies and Paradigms Spring 2007 Abstraction Feb. 27, 2007 Data Abstraction • Data abstraction = objects + operations – List + { addFirst, addLast, removeFirst, ... } – Set + { add, contains, ...} • Categories of operations – Constructors (creators/producers) – Mutators/Modifiers – Observers Abstraction Function • Specification for data structure is abstract • Implementation of data structure is concrete • How do you know if implementation meets the spec? • Abstraction function : concrete abstract – Specifies how the representation of an abstract data type is interpreted as an abstract value. Example class IntSet { int[] elts; ... } – AF(s) = { s.elts[i] | 0 <= i <= elts.length } • You always need an abstraction function when you build a data abstraction – Often it’s implicit
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved