Head First Design Patterns
책과 함께 떠나는 디자인 패턴 여행!
직접 구현하고, 정리했습니다.
오리와 함께 실습한 : 전략 패턴 정리
알고리즘군을 정의하고 캡슐화해서 각각의 알고리즘군을 수정해서 쓸 수 있게 해줍니다.
전략 패턴을 사용하면 클라이언트로부터 알고리즘을 분리해서 독립적으로 변경 할 수 있습니다.
느슨한 결합을 위해! : 옵저버 패턴 정리
객체의 상태 변화를 관찰하는 관찰자들,
즉 옵저버들의 목록을 객체에 "구성"하여
상태 변화가 있을 때마다
메서드 등을 통해 객체가 직접
목록의 각 옵저버에게 통지하도록 하는 디자인 패턴 ( 혹은 목록의 각 옵저버 스스로 업데이트 할 수 있음! )
야돈이 야도란이 됐다? : 데코레이터 패턴 정리
인스턴스 생성 간다잇~! : 팩토리 매서드 패턴 정리
객체를 생성할 때 필요한 "인터페이스"(방법) 을 만듭니다.
어떤 클래스의 인스턴스를 만들지는 서브클래스에서 결정합니다.
팩토리 매서드 패턴을 사용하면, 클래스 인스턴스 만드는 일을 서브클래스에 위임하게 됩니다.
오직 하나뿐! : 싱글턴 패턴 정리
클래스의 인스턴스가 "오직 하나"만 생성 되는것을 보장합니다!
오직 하나뿐! : 커맨드 패턴 정리
요청 내역을 객체로 캡슐화해서, 객체를 서로 다른 요청 내역에 따라 매개변수화 할 수 있다.
이로 인해서 요청을 Queue에 저장하거나,
로그로 기록하거나
"요청"에 대한 작업 취소(롤백) 기능을 사용할 수 있다.