디자인 패턴이란? 객체지향설계 과정에서 발생하는 문제들을 해결하기 위한 패턴(Pattern) 문제 상황 객체자향설계 중 '상속'은 한 가지 문제가 있다. 로봇 클래스를 상속하는 Atom 클래스와 TakwonV 클래스가 있다. 만약 자식 클래스로 Ironman 클래스가 추가 된다면 어떻게 될까? Ironman 클래스는 부모클래스의 메소드를 Override 한다. 문제는 TakwonV와 Ironman 클래스의 attack() 메소드가 소스 중복이 생기고 Atom클래스와 Ironman 클래스 사이에 move() 메소드에 소스 중복이 생긴다. 이처럼 자식클래스는 부모클래스의 메소드를 Override하면서 소스 중복이 생기고 이로인해, 유지보수가 힘들어 진다. 이와같은 상속의 문제를 해결하기 위해 등장한 디자인 ..