헤드퍼스트 디자인패턴 4. 팩토리 패턴스터디2024. 12. 4. 19:54
Table of Contents
작성중,, 우선 요약만,,
요약
이 장에서 소개한 객체 지향 원칙
클라이언트에서 new를 사용해 객체를 생성하게 되면, 변경에 닫혀 있는 코드가 만들어진다.
의존성 뒤집기 원칙
추상화된 것에 의존하게 만들고, 구체 클래스에 의존하지 않게 만든다. 즉, 고수준 구성 요소가 저수준 구성 요소에 의존하면 안 된다는 의미를 담고 있다.
이를 지키기 위한 가이드라인
- 변수에 구체 클래스의 참조를 저장하지 않는다
- 구체 클래스에서 유도된 클래스를 만들지 않는다
- 베이스 클래스에 이미 구현되어 있는 메서드를 재정의하지 않는다
간단한 팩토리
디자인 패턴이라기 보다는, 프로그래밍에서 자주 쓰이는 관용구에 가깝다. 흔히 얘기하는 '팩토리 패턴' 과는 다르다.
단순하게 객체를 생성하는 로직을 별도 클래스나 메서드로 분리해둔 형태.
팩토리 메서드 패턴
생산자 (Creator) 클래스, PizzaStore 구현체의 createPizza() 메서드가 제품 클래스를 생성한다.
제품 (Product) 클래스, 생산자 클래스를 통해 아래 Pizza (의 구현체) 클래스들이 만들어진다.
간단한 버전의 팩토리 클래스와 차이점은, 유연하게 생성할 객체(구현체 타입)를 변경할 수 있다는 점.
추상 팩토리 패턴
'스터디' 카테고리의 다른 글
헤드퍼스트 디자인패턴 7. 어뎁터 & 퍼사드 패턴 (0) | 2024.12.27 |
---|---|
헤드퍼스트 디자인패턴 5. 싱글턴 패턴 (0) | 2024.12.11 |
헤드퍼스트 디자인패턴 3. 데코레이터 패턴 (0) | 2024.10.22 |
헤드퍼스트 디자인패턴 2. 옵저버 패턴 (0) | 2024.10.09 |
헤드퍼스트 디자인패턴 1. 전략 패턴 (3) | 2024.10.03 |
@gmelon :: gmelon's greenhouse
백엔드 개발을 공부하고 있습니다.