Factory Method 패턴

2026. 4. 17. 19:21·복습/소프트웨어디자인패턴

팩토리 메소드 패턴이란?

template method 패턴의 활용 버젼

인스턴스를 생성하는 class를 따로 뺌

상위 클래스에서 인스턴스 생성 방법을 결정 > 하위 클래스에서 인스턴스를 실제로 생성

즉 new()를 활용해서 바로 객체 생성하는게 아니라능거

 

예제

Factory class

create(): 추상메소드를 활용함 -> template method

createProduct,registerProduct: 인스턴스 생성 방법 결정 -> factory method

public abstract class Factory {
	public final Product create(String owner) {
		Product p = createProduct(owner);
		registerProduct(p);
		return p;
	}
	protected abstract Product createProduct(String owner);
	protected abstract void registerProduct(Product product);
}

IDCardFactory class

Factory 클래스(상위)의 메소드를 구현함.

여기서 new를 통해서 인스턴스를 실제 생성함

public class IDCardFactory extends Factory {
	private List<String> owners = new ArrayList<String>();
	protected Product createProduct(String owner) {
		return new IDCard(owner);
	}
	protected void registerProduct(Product product) {
		owners.add(((IDCard)product).getOwner());
		System.out.println(product + “을 등록했습니다.”);
	}
	public List<String> getOwners() {
		return owners;
	}
}

 

'복습 > 소프트웨어디자인패턴' 카테고리의 다른 글

Prototype 패턴  (0) 2026.04.17
Singleton 패턴  (0) 2026.04.17
Template Method 패턴  (0) 2026.04.17
Adapter 패턴  (0) 2026.04.17
Iterator 패턴  (0) 2026.04.17
'복습/소프트웨어디자인패턴' 카테고리의 다른 글
  • Prototype 패턴
  • Singleton 패턴
  • Template Method 패턴
  • Adapter 패턴
hyeumm.dev
hyeumm.dev
말하는 감자입니다. 많이 응원해주세요..^^
  • hyeumm.dev
    천방지축 개발자 되기 프로젝트
    hyeumm.dev
  • 전체
    오늘
    어제
    • 아무개 (78)
      • 복습 (41)
        • 알고리즘 (3)
        • 소프트웨어디자인패턴 (8)
        • 네트워크 (3)
        • 자료구조 (1)
        • C++ (1)
        • 서구실 (6)
        • 멋쟁이사자처럼 (3)
        • SOPT (7)
        • 소분설 (6)
        • 운영체제 (3)
      • 회고 (2)
        • UMC (0)
      • 프로그래밍 (19)
        • 안드로이드 (15)
        • 백준 (0)
        • 파이썬 기초 (0)
        • kotlin in action (3)
        • 테스트 코드 (1)
      • 디자인 (7)
      • 기획 (3)
        • 서비스 리뷰 (1)
        • IT 알쓸신잡 (2)
      • 대외활동 (5)
        • 네이버 클라우드 캠프 (5)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    비트캠프강남
    4호선톤
    국비교육
    해커톤
    네이버클라우드캠프
    ncamp서포터즈
    hyperclovax
    KDT
    sopt
    발대식
    네이버클라우드
    네클캠
    솝트
    #네이버클라우드캠프
    네이버클라우드캠프서포터즈
    멋쟁이사자처럼
    에이아이팜
    IT동아리
    PM
    서류
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
hyeumm.dev
Factory Method 패턴
상단으로

티스토리툴바