An abstract data type (ADT) is a set of operations. Abstract data types are
mathematical abstractions; nowhere in an ADT's definition is there any mention of how the set of
operations is implemented. This can be viewed as an extension of modular
design.
Objects such as lists, sets, and
graphs, along with their operations, can be viewed as abstract data types, just
as integers, reals, and booleans are data types. Integers, reals, and booleans
have operations associated with them, and so do abstract data types. For the
set ADT, we might have such operations as union,
intersection, size, and complement. Alternately, we might only want
the two operations union and find, which would define a different
ADT on the set.
The basic idea is that the
implementation of these operations is written once in the program, and any
other part of the program that needs to perform an operation on the ADT can do so by calling the appropriate function. If for some
reason implementation details need to change, it should be easy to do so by
merely changing the routines that perform the ADT operations. This change, in a perfect world, would be
completely transparent to the rest of the program.
There is no rule telling us which
operations must be supported for each ADT; this is a design decision. Error handling and tie breaking
(where appropriate) are also generally up to the program designer.
ReplyDeletenice article for beginners.thank you.
javacodegeeks
welookups
I don't know much about programming, but I know that data and their calculations are an absolute basis in the IT industry and in the solutions introduced there. If I need business-specific software, I can always ask for such a project via https://grapeup.com/contact/. Very nice approach to the customer.
ReplyDelete