example when operating carthe primary activities are steeringacceleratingand braking on nearly all passenger carsyou steer by turning the steering wheelaccelerate by pushing the gas pedaland brake by pushing the brake pedal this design for cars can be viewed as an adt with operations "steer,"accelerate,and "brake two cars might implement these operations in radically different wayssay with different types of engineor frontversus rear-wheel drive yetmost drivers can operate many different cars because the adt presents uniform method of operation that does not require the driver to understand the specifics of any particular engine or drive design these differences are deliberately hidden the concept of an adt is one instance of an important principle that must be understood by any successful computer scientistmanaging complexity through abstraction central theme of computer science is complexity and techniques for handling it humans deal with complexity by assigning label to an assembly of objects or concepts and then manipulating the label in place of the assembly cognitive psychologists call such label metaphor particular label might be related to other pieces of information or other labels this collection can in turn be given labelforming hierarchy of concepts and labels this hierarchy of labels allows us to focus on important issues while ignoring unnecessary details example we apply the label "hard driveto collection of hardware that manipulates data on particular type of storage deviceand we apply the label "cputo the hardware that controls execution of computer instructions these and other labels are gathered together under the label "computer because even small home computers have millions of componentssome form of abstraction is necessary to comprehend how computer operates consider how you might go about the process of designing complex computer program that implements and manipulates an adt the adt is implemented in one part of the program by particular data structure while designing those parts of the program that use the adtyou can think in terms of operations on the data type without concern for the data structure' implementation without this ability to simplify your thinking about complex programyou would have no hope of understanding or implementing it