[typescript] 상속과 구현을 사용하는 경우 어떤 점을 주의해야 하는가?

Typescript에서 클래스를 작성할 때 상속과 구현을 사용할 수 있습니다. 그러나 이 두 가지 기능을 사용할 때 주의해야 할 몇 가지 점이 있습니다.

상속 (Inheritance)

상속을 사용할 때 주의할 점은 상위 클래스와 하위 클래스 간의 결합도(coupling)가 높아진다는 것입니다. 상속을 오용하면 클래스 간의 강력한 결합이 발생하여 유연성이 감소할 수 있습니다.

다른 주의사항으로는 다중 상속이 지원되지 않는다는 점입니다. Typescript는 단일 상속만을 지원하며, 클래스는 다른 클래스에서만 상속 받을 수 있습니다.

구현 (Implementation)

인터페이스를 사용하여 클래스에서 메서드와 속성을 강제할 수 있습니다. 클래스가 인터페이스를 구현할 때, 인터페이스에 정의된 모든 멤버(메서드 및 속성)를 구현해야 합니다.

인터페이스를 사용할 때 주의할 점은 인터페이스의 특성을 잃어버릴 수 있다는 것입니다. 클래스가 인터페이스를 구현할 때, 인터페이스의 추상적 특성을 잃지 않도록 신중하게 구현해야 합니다.

요약

상속과 구현은 객체 지향 프로그래밍에서 중요한 개념이지만, 너무 많이 사용하거나 오용하면 코드의 유연성과 확장성이 떨어질 수 있습니다. 따라서, 이러한 기능을 사용할 때에는 신중하게 고려해야 합니다.

참고 자료:

  1. Typescript 공식 문서
  2. MDN Web Docs