리팩터링과 디자인 패턴

[Design pattern] 많이 쓰는 14가지 핵심 GoF 디자인 패턴의 종류

목적

코드의 재사용성, 디자인 재사용성 증대

패턴을 제대로 이해하고 패턴 간 관계를 이해하자

종류

생성

객체 인스턴스를 생성함. 클라이언트와 그 클라이언트가 생성해야 하는 객체 인스턴스 사이 연결을 끊음

종류: 싱글턴, 빌더, 프로토타입, 추상팩토리, 팩토리메서드

행동

클래스와 객체들이 상호작용하는 방법과 역할을 분담하는 방법을 다루는 패턴

종류: 템플릿 메소드, 비지터, 중재자, 반복자, 싱글턴, 인터프리터, 메멘토, 옵저버, 역할변경, 상태, 전략

구조

클래스와 객체를 더 큰 구조로 만들 수 있게 구성을 사용하는 패턴

종류: 데코레이터, 컴포지트 ,프록시, 퍼사드, 브리지, 플라이웨이트, 어댑터

싱글턴 패턴

객체의 인스턴스가 오직 1개만 생성되는 패턴이다.

전역변수 쓰는 것처럼 객체 인스턴스를 어디서든지 액세스한다.