어떤 개념인가요 ?

instanceof를 지양해야하는 이유는?

개방폐쇄 원칙(OCP) 위반

개방-폐쇄 원칙을 깨뜨리게 된다.

새로운 타입이 추가될 때마다 instanceof 분기를 수정해야 한다.

다형성이 죽는다.

객체를 나눈 이유에 대한 다형성이 사라지게된다.

추상화가 깨진다.

호출부에서 구현에 대한 디테일을 알아야 하는 강한 결합도가 생긴다.

어떤 문제를 해결하려고 나왔나?

어떻게 동작하나? (큰 그림)

언제 쓰고, 언제 안 쓰나?

  • 쓸 때:
  • 안 쓸 때:

남에게 설명한다면 어떻게 설명할 것인가?