[객체지향의 사실과 오해] 타입과 추상화 -1

2025. 3. 20. 20:10·📚 개발자의 서재/객체지향의 사실과 오해
해당 포스팅은 조영호 작가님의  객체지향의 사실과 오해 (P.72~82)를 읽고 정리한 글입니다.

 

추상화를 통한 복잡성 극복

현실은 복잡하며 예측 불가능한 혼돈의 덩어리다. 현실에 존재하는 다양한 현상 및 사물과 상호작용하기 위해서는 우선 현실을 이해해야 한다. 문제는 복잡성의 총체인 현실이라는 괴물을 그대로 수용하기에는 인간이 지니고 있는 인지 능력과 저장 공간이 너무나도 보잘것없다.

 

따라서 사람들은 본능적으로 이해하기 쉽고 예측 가능한 수준으로 현실을 분해하고 단순화하는 전략을 따른다.

 

추상화란 현실에서 출발하되 불필요한 부분을 도려내가면서 사물의의 놀라운 본질을 드러나게 하는 과정이다. 즉, 현실에 존재하는 복잡성을 극복하는 과정이다.

 

추상화
어떤 양상, 세부 사항, 구조를 좀 더 명확하게 이해하기 위해 특정 절차나 물체를 의도적으로 생략하거나 감춤으로써 복잡도를 극복하는 방법

복잡성을 다루기 위해 추상화는 두 차원에서 이루어진다.

- 첫 번째 차원은 구체적인 사물들 간의 공통점은 취하고 차이점은 버리는 일반화를 통해 단순하게 만드는 것
- 두 번째 차원은 중요한 부분을 강조하기 위해 불필요한 세부 사항을 제거함으로써 단순하게 만드는 것

모든 경우에 추상화의 목적은 복잡성을 이해하기 쉬운 수준으로 단순화하는 것이라는 점을 기억하라.

 

저작자표시 비영리 변경금지 (새창열림)

'📚 개발자의 서재 > 객체지향의 사실과 오해' 카테고리의 다른 글

[객체지향의 사실과 오해] 타입과 추상화 -3  (0) 2025.03.22
[객체지향의 사실과 오해] 타입과 추상화 -2  (0) 2025.03.21
[객체지향의 사실과 오해] 이상한 나라의 객체 -6  (0) 2025.03.19
[객체지향의 사실과 오해] 이상한 나라의 객체-5  (0) 2025.03.18
[객체지향의 사실과 오해] 이상한 나라의 객체 -4  (0) 2025.03.17
'📚 개발자의 서재/객체지향의 사실과 오해' 카테고리의 다른 글
  • [객체지향의 사실과 오해] 타입과 추상화 -3
  • [객체지향의 사실과 오해] 타입과 추상화 -2
  • [객체지향의 사실과 오해] 이상한 나라의 객체 -6
  • [객체지향의 사실과 오해] 이상한 나라의 객체-5
l'avenirJun
l'avenirJun
  • l'avenirJun
    오늘도 꾸준히 개발
    l'avenirJun
  • 전체
    오늘
    어제
    • 분류 전체보기 N
      • 📚 개발자의 서재 N
        • 객체지향의 사실과 오해
        • Good Code, Bad Code
        • 도메인 주도 개발 시작하기 N
      • 🔧 트러블 슈팅
      • Java
      • Spring
      • 운영체제
        • 공룡책 학습
      • 알고리즘
      • GIT
      • 면접 지식
      • Spring 단기심화 2기
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    good code bad code
    객체지향의 사실과 오해
    협력
    코딩트리조별과제
    specification
    인터페이스
    코드트리
    가독성
    코딩테스트
    리포지터리
    역할
    메시지
    매핑 구현
    책임-주도 설계
    도메인 모델
    타입
    추상화
    모듈화
    객체
    책임
    표현 영역
    애그리거트 루트
    티스토리챌린지
    오블완
    캡슐화
    유스케이스
    코드 계약
    도메인 주도 개발 시작하기
    DIP
    애그리거트
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
l'avenirJun
[객체지향의 사실과 오해] 타입과 추상화 -1
상단으로

티스토리툴바