해결된 질문
작성
·
343
답변 1
3
추상화란 불필요한 부분을 제거하고 본질을 드러내는 과정이라고 볼 수 있습니다. 예를 들어 지하철 노선도 같죠. 현실의 지하철 노선을 그대로 옮기려면 무척 복작하고 거대할 겁니다. 이걸 단순화한 게 지하철 노선도에요. 불필요한 정보를 제거하고 축척을 조절하고 간격을 단순화해서 작은 핸드폰 화면에 쏙 들어가게 추상화한 것이죠.
추상화는 이런 현실의 복잡성을 극복하기 위한 사고의 틀입니다. 공통점을 찾아서 문제를 일반화하기도 하고요. 불필요한 부분을 제거해서 중요한 부분이 들어나게 단순화하는 방법도 있어요.
이런 추상화의 대표적인 결과물이 바로 객체지향 프로그래밍에서 말하는 객체이기도 합니다. 리액트 컴포넌트도 마찬가지고요.
입력 필드를 렌더하고 사용자의 입력을 표시하는 것을 수업에서는 SearchFrom이란 컴포넌트로 추상화 했습니다.
최근에 읽은 책 중에 "객체지향의 사실과 오해"의 3장 타입과 추상화 부분을 추천 드립니다. 추상화를 이해하시는데 도움이 될겁니다.