객체지향 패러다임

OneTwoThree·2023년 6월 1일

강한 응집 낮은 결합

  • 응집
    루틴 안의 오퍼레이션이 얼마나 긴밀히 관련 있는가?
  • 결합
    두 루틴 사이의 연결 강도

소프트웨어 개발 관점

  • 개념적
    구현과 관계없는 추상적인 부분 : 무엇을
  • 명세적
    소프트웨어 인터페이스 수준 (구현이 아닌)
  • 구현적
    구체적인 원시 코드 수준 : 메소드, 어떻게

Visibility

  • Public
    누구나 접근 가능
  • Protected
    해당 클래스와 파생 클래스만 접근 가능
  • Private
    해당 클래스 내에서만 접근 가능

캡슐화

  • 사용자가 구현에 대해 걱정할 필요 없음
  • 사용자를 걱정하기 않고 구현 변경 가능
  • 객체의 내부는 외부에 알려지지 않음

0개의 댓글