[javascript] 접근 제어자 (private, public)의 활용

자바스크립트에서 접근 제어자란 객체의 속성과 메서드에 대한 접근을 제어하는 기능을 말합니다. 이를 통해 속성이나 메서드를 외부에서 직접 조작하는 것을 제한할 수 있습니다. 이번 포스트에서는 접근 제어자의 활용 방법을 살펴보겠습니다.

Private와 Public 속성

먼저, 접근 제어자 중 privatepublic에 대해 간단히 설명하겠습니다.

Private 속성은 해당 객체의 내부 메서드나 속성으로, 외부에서의 직접적인 접근을 제한합니다. 반면 Public 속성은 외부에서 접근이 가능한 속성입니다.

Private 속성 활용

class Circle {
  #radius; // Private 속성
  
  constructor(radius) {
    this.#radius = radius;
  }
  
  #calculateDiameter() {
    return this.#radius * 2; // Private 메서드 내부에서 사용 가능
  }
  
  getDiameter() {
    return this.#calculateDiameter(); // Public 메서드에서 private 메서드 호출
  }
}

위 예시에서 # 키워드를 사용하여 radiuscalculateDiameter 메서드를 private으로 정의했습니다. 이렇게 하면 외부에서 해당 속성이나 메서드에 직접적으로 접근할 수 없습니다.

Public 속성 활용

class Circle {
  #radius; // Private 속성
  
  constructor(radius) {
    this.#radius = radius;
  }
  
  get radius() { // Public getter 메서드
    return this.#radius;
  }
  
  set radius(newRadius) { // Public setter 메서드
    this.#radius = newRadius;
  }
}

위 예시에서 radius를 public으로 정의하고, getset 메서드를 활용하여 외부에서 속성에 접근하거나 값을 변경할 수 있도록 구현하였습니다.

접근 제어자를 사용하여 객체의 상태와 행동을 보다 안정적으로 관리할 수 있습니다. 올바른 사용 방법을 숙지하고 적재적소에 활용함으로써 안정적인 코드를 작성할 수 있습니다.

이상으로 접근 제어자(private, public)의 활용에 대해 알아보았습니다.

참고 자료