Abstract data types

...

Abstract data types are data types that specifies a set of data values and a collection of operations that can be performed on such values. Abstract data types are independent of their implementations meaning it specifies operations that can be performed on a data without revealing how those operations are implemented. Lets use a car example think of abstract data type as car’s interface, it has a steering wheel, accelerator, gears and brakes. This control define how you interact with the car but does not reveal how the engine and internal components works. That way you can drive different cars which you can think of as different implementations using the same interface which in our car examples are the steers wheel, brakes, accelerator and gears. That is how it is for abstract data types, an abstract data type provide a standard interface to interact with data no matter how it is managed internally. Abstract data types focus on what which are the operations and not how which is the implementation of the data type.