-
팩토리 패턴 (Factory pattern)?자바웹프로그래밍/디자인패턴(design pattern) 2020. 4. 6. 11:17728x90반응형
팩토리패턴
- 바뀔 수 있는 부분을 찾아내서 바뀌지 않는 부분하고 분리해야함.
자바코드에서 new를 사용하는것은 구상클래스의 인스턴스를 생성하는것이다. 구상클래스를 바탕으로 코딩을 하면
나중에 코드를 수정해야할 가능성이 높아지고, 유연성이 떨어진다. 그 이유는 변화에 약하기 때문이다.
인터페이스에 맞춰서 코딩을 하면 시스템에서 일어날 수 있는 여러가지 변화들을 이겨낼수있다.
그래서 구상클래스의 인스턴스를 만드는 부분을 찾아서 분리/캡슐화 하기위해 팩토리 패턴을 사용한다.
팩토리 패턴의 핵심은 클래스의 인스턴스를 만드는 것을 서브클래스에서 결정하도록 한다는것이다. 즉,
new 키워드를 사용하는 부분을 서브클래스에 위임함으로 써 객체 생성을 캡슐화하고 구상클래스에 대한 의존성이 줄어
든다는 이점을 얻을 수 있다는것.
특히 구상클래스에 대한 의존성이 줄어드는 것은 의존성 뒤집기 원칙(DI)에 기인하는데, DI는 자바진영에서 널리 쓰이고 있는 Spring프레임워크의 핵심 개념중 하나이다.
흔히 대부분 SI사업에서 사용하는
service -> serviceimpl
이런식으로 하는것을 팩토리 패턴이라함.
728x90반응형'자바웹프로그래밍 > 디자인패턴(design pattern)' 카테고리의 다른 글
[SOLID 패턴] SRP (단일 책임 원칙) ,OCP(개방-폐쇄 원칙) 설명 (0) 2022.03.22