일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Python
- Spring Boot
- 프로그래머스 월간 코드 챌린지 시즌1
- Firefox
- 브랜디
- heroku
- terraform
- github actions
- Word Cloud
- selenium
- PostgreSQL
- WPF
- pycharm
- c#
- 클린 코드
- 스코페2021
- Codeforces
- 프로그래머스 코딩 테스트 연습
- 애드센스
- 프로그래머스 코딩테스트 연습문제
- FastAPI
- 프로그래머스 월간 코드 챌린지
- 디자인 패턴
- 바이오데이터 엔지니어
- 프로그래머스 코딩테스트 연습
- 스프링 부트와 AWS로 혼자 구현하는 웹 서비스
- 파이썬
- github
- git
- PostgreSQL 설치 시 에러
Archives
- Today
- Total
목록팩토리 패턴 (1)
프로그래밍 연습하기
팩토리 패턴
new를 사용하게 되면 구상 클래스의 인스턴스를 만들게 됩니다. 구상 클래스를 많이 사용하게 되면 구상 클래스를 추가할 때 마다 코드를 고쳐야 해서 많은 문제가 생기게 됩니다. 이런 경우를 변화에 닫혀있다라고 하고, OCP(Open/Closed Principle)을 어기게 됩니다. 따라서 객체를 생성하는 부분을 팩토리라고 이름 붙인 클래스로 따로 분리하게 됩니다. 하지만 이러한 Simple Factory는 디자인 패턴이라고 할 수는 없습니다. 단지 클라이언트와 구상 클래스를 분리하기 위한 간단한 기법으로 활용될 수 있습니다. 추상 클래스를 만들어 객체를 생성하는 메소드를 추상 메소드로 선언해둡니다. 여기서 나온 서브클래스들이 객체를 생성하는 추상 메소드를 필요에 맞게 구현하게 됩니다. 이것이 팩토리 메소..
디자인 패턴
2020. 8. 6. 13:13