추상화 (컴퓨터 과학)

컴퓨터 과학에서 추상화(abstraction)는 복잡한 자료, 모듈, 시스템 등으로부터 핵심적인 개념 또는 기능을 간추려 내는 것을 말한다.

운영 체제에서의 추상화 
운영체제는 하드디스크에 대해 파일, 네트워크에 대해 포트, 메모리에 대해 주소, CPU에 대해 프로세스라는 추상화된 접근 방법을 제공한다. 이 개념은 수학적 추상화의 유추로부터 유래되었다.

추상화 수준

데이터베이스 시스템 

 물리 수준(Physical level): 최저 수준의 추상화는 시스템의 데이터 저장 방식을 기술한다.
 논리 수준(Logical level): 그 다음의 추상화 수준은 어떠한 데이터가 데이터베이스를 저장하는지를 기술한다.
 보기 수준(View level): 가장 높은 수준의 추상화는 데이터베이스 전체 가운데 일부만을 기술한다.

계층 구조 
여러 수준의 추상화의 디자인을 제공하는 능력은
 디자인을 상당히 단순하게 만들고
 서로 다른 역할자들이 다양한 수준의 추상화에서 효율적으로 동작하게 한다.
시스템 디자인과 비즈니스 프로세스 디자인이 이들을 둘 다 사용한다. 일부 디자인 프로세스는 다양한 수준의 추상화를 포함하는 디자인을 직접 만들어낸다.

같이 보기 
 추상적 자료 구조

더 읽기 
 
 
 Abstraction/information hiding - CS211 course, Cornell University.
 

데이터 관리
프로그래밍 패러다임
추상