자바

POLYMORPHISM 패턴

PSW 2024. 12. 19. 03:01

POLYMORPHISM 패턴이란?

객체의 타입에 따라 변하는 로직이 있을 때 변하는 로직을 담당할 책임을 어떻게 할당해야 하는가? 타입을 명시적으로 정의하고 각 타입에 다형적으로 행동하는 책임을 할당한다.

 

프로그램을 if ~ else 또는 switch ~case등의 조건 논리를 사용해서 설계한다면 새로운 변화가 일어날 경우 조건 논리를 수정해야 한다. 이건 프로그램을 수정하기 어렵고 변경에 취약하게 만든다.

 

POLYMORPHISM 패턴은 객체의 타입을 검사해서 타입에 따라 여러 대안들을 수행하는 조건적인 논리를 사용하지 말라고 경고한다. 대신 다형성을 이용해 새로운 변화를 다루기 쉽게 확자하라고 권고한다.