디자인 패턴의 3가지 분류

3가지 패턴의 목적을 이해하기!

  1. #생성 패턴 (Creational) : 객체의 생성 방식 결정

    Class-creational patterns, Object-creational patterns.

    예) DBConnection을 관리하는 Instance를 하나만 만들 수 있도록 제한하여, 불필요한 연결을 막음.

  2. #구조 패턴 (Structural) : 객체간의 관계를 조직

    예) 2개의 인터페이스가 서로 호환이 되지 않을 때, 둘을 연결해주기 위해서 새로운 클래스를 만들어서 연결시킬 수 있도록 함.

  3. #행위 패턴 (Behavioral): 객체의 행위를 조직, 관리, 연합

    예) 하위 클래스에서 구현해야 하는 함수 및 알고리즘들을 미리 선언하여, 상속시 이를 필수로 구현하도록 함.

이중 팩토리 패턴은 객체 생성 관련 상세 로직을 숨기고, 객체를 생성하는 코드의 유연성을 높이는 데 목표로 하는 생성 패턴에 해당

팩토리 패턴은 객체 생성에 관한 로직을 하위 클래스에 위임하는 패턴.

상위 클래스와 하위 클래스가 분리 → 느슨한 결합

JAVA SPRING 백엔드 개발자가 팩토리 메서드 패턴을 사용하는 경우