캡슐화, 추상화

캡슐화(encapsulation)란?

데이터(상태)와 동작(메서드)을 하나의 클래스로 묶고 내부 구현을 숨기는 것 (data hiding)

  • 함수의 black box(추상화) 개념을 클래스 단위로 확장한 것
  • 함수를 분리할 때 쓰던 원칙을 그대로 적용 (클래스 안의 중복 동작은 private 메서드로 분리)

추상화(abstraction)란?

구체적인 구현(세부사항)에 접근하지 않고, 무엇을 하는지만 알고 사용하는 것

  • black box 개념: 사용자는 내부가 어떻게 동작하는지 몰라도 공개된 인터페이스(메서드)만으로 사용
  • 구체적인 것에 직접 접근하지 않음

0건의 항목