컴퓨터 공학 & 통신
[개념 정리] 추상화
왈왈디
2023. 6. 30. 21:26
728x90
추상화란?
프로그래밍에서 추상화란 복잡한 데이터, 구조, 시스템 등으로부터
핵심만을 추려내 덜 자세하게 만드는 것,
또는 세부 사항, 절차 등을 감추고 인페이스를 만들어 복잡도를 낮추는 방법을 말한다.
쉽게 말해, 복잡한 컴퓨터의 활동들을 당장 알 필요 없는 부분들은 생략하고
인간이 직관적으로 이해할 수 있도록 만드는 과정이라고 할 수 있을 것 같다.
추상화는 크게 데이터 추상화와 프로세스 추상화 두 가지로 분류된다.
데이터 추상화
여러 데이터가 함께 있을 때 그들의 공통점은 모으고, 차이점을 버린다.
예를 들어, 고양이, 강아지, 원숭이가 있다면
이들의 공통 특징인 '동물'을 '동물'이라는 카테고리로 카테고리화 시키는 것이
데이터 추상화이다.
프로세스 추상화
복잡한 내부 프로세스를 숨기는 것을 말한다.
예를 들어, 데이터베이스가 데이터를 어떻게 저장하는지 모르지만
단순히 insert, update 등의 쿼리로 데이터를 저장할 수 있는 것이 프로세스 추상화 덕분이다.
참고: inflearn 강의 'CS 지식의 정석 - 큰돌'
728x90