추상화 (컴퓨터 과학)
보이기
컴퓨터 과학에서 추상화(abstraction)는 복잡한 자료, 모듈, 시스템 등으로부터 핵심적인 개념 또는 기능을 간추려 내는 것을 말한다.
운영 체제에서의 추상화
[편집]운영체제는 하드디스크에 대해 파일, 네트워크에 대해 포트, 메모리에 대해 주소, CPU에 대해 프로세스라는 추상화된 접근 방법을 제공한다. 이 개념은 수학적 추상화의 유추로부터 유래되었다.
추상화 수준
[편집]데이터베이스 시스템
[편집]
- 물리 수준(Physical level): 최저 수준의 추상화는 시스템의 데이터 저장 방식을 기술한다.
- 논리 수준(Logical level): 그 다음의 추상화 수준은 어떠한 데이터가 데이터베이스를 저장하는지를 기술한다.
- 보기 수준(View level): 가장 높은 수준의 추상화는 데이터베이스 전체 가운데 일부만을 기술한다.
계층 구조
[편집]여러 수준의 추상화의 디자인을 제공하는 능력은
- 디자인을 상당히 단순하게 만들고
- 서로 다른 역할자들이 다양한 수준의 추상화에서 효율적으로 동작하게 한다.
시스템 디자인과 비즈니스 프로세스 디자인이 이들을 둘 다 사용한다. 일부 디자인 프로세스는 다양한 수준의 추상화를 포함하는 디자인을 직접 만들어낸다.
같이 보기
[편집]추가 문헌
[편집]- Harold Abelson; Gerald Jay Sussman; Julie Sussman (1996년 7월 25일). 《Structure and Interpretation of Computer Programs》 2판. MIT Press. ISBN 978-0-262-01153-2. 2009년 2월 26일에 원본 문서에서 보존된 문서. 2012년 6월 22일에 확인함.
- Spolsky, Joel (11 November, 2002). “The Law of Leaky Abstractions”. 《Joel on Software》.
- Abstraction/information hiding - CS211 course, Cornell University.
- Gorodinski, Lev (31 May, 2012). “Abstractions”.