추상화

ゆぬ·2023년 5월 28일

추상화(Abstraciton)란?


추상화 = 공통된 속성이나 기능을 묶어서 이름을 붙이는 것!

컴퓨터 공학에서의 추상화란 클래스를 정의할 때 불필요한 부분들을 생략하고 객체의 속성 중 중요한 것에만 중점을 두어 개략화 하는 것을 뜻한다.

추상화의 종류

추상화는 '데이터 추상화'와 '제어 추상화'로 분류될 수 있다.

데이터 추상화

데이터 추상화란, 대상을 간단한 개념으로 일반화 하는 것을 뜻한다.
예를들어 강아지, 고양이, 원숭이라는 객체가 있을 때, 객체들 간의 공통 특징인 '동물'로 묶어 이름을 붙이는 것을 데이터 추상화라고 할 수 있다.

제어 추상화

제어 추상화는 특정 클래스의 메소드를 사용하는 사용자에게 해당 메소드의 작동방식과 같은 내부 로직을 숨기는 것을 뜻한다.
예를들어 특정 국가명을 입력하면 각 나라의 달력을 리턴해주는 함수가 있을 때 사용자는 함수의 내부가 어떻게 설계되었는지는 알 필요 없이 해당 국가의 달력에 해당하는 반환값만 받으면 된다.


정리

추상화를 사용하여 프로그램을 설계한다면 코드의 생산성과 가독성이 증가하여 에러가 줄어들고 유지 보수시 시간이 단축되는 효과를 얻을 수 있다.

profile
얼마나 깊이 고민하느냐가 자신의 위치를 ​​결정한다

0개의 댓글