[typescript] private 접근 제어자와 은닉화

TypeScript는 자바스크립트의 확장된 기능을 가진 객체지향 언어이며, 클래스 기반 프로그래밍을 지원합니다. TypeScript에서는 private 접근 제어자를 사용하여 클래스 멤버에 대한 캡슐화와 정보 은닉화를 지원합니다.

private 접근 제어자는 클래스 외부에서의 접근을 막고, 해당 멤버에 대한 정보 은닉을 가능하게 합니다. 이를 통해 클래스 내부의 상태를 보호하고 외부에서의 무분별한 접근을 방지할 수 있습니다.

Private 접근 제어자의 사용

다음은 private 접근 제어자를 사용한 예시입니다.

class Book {
  private title: string;

  constructor(title: string) {
    this.title = title;
  }

  private printTitle() {
    console.log(this.title);
  }
}

let book = new Book("TypeScript Deep Dive");
console.log(book.title); // 에러: 접근 불가
book.printTitle(); // 에러: 접근 불가

위의 예시에서 title 멤버와 printTitle 메서드는 private 접근 제어자로 선언되었습니다. 따라서 클래스 외부에서 해당 멤버에 접근하거나 호출하는 것은 허용되지 않습니다.

정보은닉화와 캡슐화

private 접근 제어자를 사용하여 멤버를 보호함으로써 클래스의 내부 구현을 은닉하고, 안전하게 캡슐화할 수 있습니다. 이는 코드의 유지보수성을 향상시키고, 예기치 않은 상태 변경을 방지하는 데 도움이 됩니다.

결론

TypeScript의 private 접근 제어자를 사용하면 클래스의 정보를 안전하게 은닉하고 캡슐화할 수 있습니다. 이는 코드의 안정성과 가독성을 높이는 데 도움이 됩니다.

관련 문서: