들어가기 전에 Composite Pattern도 사실 Interface를 잘 알고 나서 시작하면 좋을 듯 합니다..! 1. Composite Pattern 컴포지트 패턴 (Composite pattern)이란 객체들의 관계를 트리 구조로 구성하여 부분-전체 계층을 표현하는 패턴으로, 사용자가 단일 객체와 복합 객체 모두 동일하게 다루도록 한다. - 위키백과 Component : Client가 Composite 오브젝트를 다루기 위한 인터페이스. 집합 관계에 포함시킬 수 있는 객체의 인터페이스. Leaf: 자식이 없는 객체의 행동을 정의. 트리구조상 맨 밑에 부분. Composite: 자식이 있는 객체의 행동을 정의. 약간 말이 어려울 수 있는데 객체들로 이루어진 트리를 가진 패턴이라고 생각하면 됩니다. ..
들어가기 전에 전략패턴을 처음 들어본 것은 예전에 Java 스터디를 하면서 Next Challenge 과제 중 레이싱게임을 구현하는 것을 연습해보면서 였던 것 같다. 코드 리뷰 중에 레이싱카의 움직임에 대해 전략 패턴을 사용하면 어떠냐 라는 리뷰를 받은 적이 있었는데 그 때에는 전략 패턴이 왜 필요해서 써야되는지 감이 안 온 상태로 접근하게 된 것 같다. 이번에 전략 패턴에 대해서 정리해보고 전략 패턴이 객체지향관점에서 어떤 장점이 있는지 다뤄볼 예정입니다. 1. Strategy Pattern 기본 설명 전략 패턴의 기본적인 Flow는 아래의 이미지와 같습니다. 결국에 Interface를 쓰고 유연하게 그리고 느슨한 결합을 통해 설계를 할 수 있는 부분이 있는데 기존의 코드를 작성할 때와의 차이점을 한번..