리팩터링 관련 디자인 패턴 테스트 소스 정리
디자인 패턴은 크게 세 가지 유형으로 나뉜다.
-
생성 패턴: 객체를 생성하는 방법에 대한 패턴이다. 이 패턴은 객체 생성의 유연성과 재사용성을 높이며, 코드의 결합도를 낮춘다. 예를 들어, Singleton 패턴은 어떤 클래스의 인스턴스가 오직 하나만 생성되어야 하는 경우 사용된다.
- 팩토리 메소드 패턴
- 추상 팩토리 패턴
- 빌더 패턴
- 싱글턴 패턴
-
구조 패턴: 클래스나 객체들을 조합해 더 큰 구조를 만드는 방법에 대한 패턴이다. 이 패턴은 객체 간의 관계를 정의하고, 객체들 간의 상호작용을 더욱 효율적으로 만들어준다. 예를 들어, Decorator 패턴은 객체의 동작을 변경하지 않고도 객체에 새로운 기능을 추가할 수 있도록 한다.
- 어댑터 패턴
- 브리지 배턴
- 복합체 패턴
- 데코레이터 패턴
- 퍼사드 패턴
- 플라이 웨이트 패턴
- 프록시 패턴
-
행동 패턴: 객체들이 상호작용하면서 처리해야 할 작업에 대한 패턴이다. 이 패턴은 객체들 간의 상호작용을 좀 더 유연하게 만들어주고, 코드의 재사용성을 높여준다. 예를 들어, Observer 패턴은 객체들 간의 의존성을 줄이고, 이벤트에 대한 반응성을 높여준다.
- 책임 연쇠 패턴
- 커맨드 패턴
- 반복자 패턴
- 중재자 패턴
- 메멘토 패턴
- 옵서버 패턴
- 상태 패턴
- 전략 패턴
- 템플릿 메서드 패턴
- 비지터 패턴