Did you know that you can navigate the posts by swiping left and right?
줄여서 ADT라고 많이들 불리는 추상자료형의 의미는 다음과 같다.
구체적인 기능의 완성과정을 언급하지 않고, 순수하게 기능이 무엇인지를 나열한 것
ADT를 정의하면 내부 구현을 알지 못해도 활용할 수 있다. 그것이 ADT의 본질이고 존재이유이다. ADT는 딱히 표준이 없다. 해당하는 자료구조의 기본 특성은 가진 채로 ADT가 구현되지만, 정의하는 사람이나 회사에 따라서 다르게 구현된다.
ADT는 흔히 헤더파일에서 정의된다. 헤더파일을 쉽게 말하면 메뉴판이다. 음식을 어떻게 만들고 조리하는지와 같은 레시피에 대한 내용은 없고, 이름만 있다. 소비자의 입장과 개발자의 입장이 비슷할 수도 있다. 소비자는 음식을 주문할 때, 몇 도에서 몇 분간 굽고 튀기는 지에 대한 것은 신경쓸 필요없이 주문만 하면 된다. 이와 마찬가지로 개발자도 기능을 구현할 때, 내부 함수가 서로 어떻게 연결되어있고 호출하는 지에는 신경쓸 필요없이 함수만 사용하면 된다.
추상자료형의 예시로는 복소수, 리스트, 스택, 큐, 맵, 우선순위 큐, 집합 등이 있다.