일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 10분
- Writing
- 파비최
- 매일
- 뭐든
- 30분
- 영어공부
- 프로젝트
- 운동
- 스탭퍼
- realclass
- leetcode
- 쓰릴오브파이트
- 읽기
- 리얼 클래스
- 개발자
- Daily Challenge
- 영어원서읽기
- Problem Solving
- 괜찮음
- English
- 링피트
- 만화도
- 잡생각
- 월간
- 사이드
- 3줄정리
- 미드시청
- 화상영어
- FIT XR
Archives
- Today
- Total
파비의 매일매일 공부기록
파이썬으로 살펴보는 아키텍처 패턴 - 12장 #2 본문
12.3 Post/리디렉션/Get과 CQS
- 웹 개발을 하는 사람에게는 이 패턴이 익숙함.
- 웹 엔드포인트는 HTTP POST 요청을 받고, 처리한 결과를 보여주기 위해 리디렉션으로 응답함.
- 쓰기와 읽기 단계를 분리해서 문제를 해결할 수 있음.
- 이 기법은 명령-질의 분리(CQS)의 간단한 예.
- CQS에서는 한 가지 간단한 규칙을 따름 : 함수는 상태를 변경하거나 질문에 답하는 일 중에 한 가지만 해야 함. 두 가지 일을 모두 다해서는 안됨.
12.4 점심을 잠깐 미뤄라
- 단순 SQL을 사용해서 읽기와 쓰기를 분리해 봄.
12.5 CQRS 뷰 테스트하기
- 단순 SQL을 적용한 views.py를 테스트
12.6 '명확한' 대안 1: 기존 저장소 사용하기
- 기존 저장소와 도메인 모델 클래스를 재사용하는 방법이 그렇게 쉽지 않음.
- 새로운 도우미 메서드를 양쪽에 다 추가하고 파이썬 수준에서 루프와 걸러내는 작업을 여러 번 수행해야 함.
- 데이터 베이스를 사용하면 이 모든 작업을 훨씬 더 효과적으로 수행 가능.
- 그러나 구현이 꽤 투박하게 느껴지는 단점이 있음.
12.7 읽기 연산에 최적화되지 않은 도메인 모델
- 도메인 모델을 만드는 데 든 노력은 주로 쓰기 연산을 위한 것.
- 읽기를 위한 요구 사항은 개념적으로 도메인 모델에 대한 요구 사항과 상당히 다름.
- 접근 편의를 위해 도메인 클래스는 상태를 변경하는 메서드를 여러 가지 제공.
- 도메인 모델의 복잡도가 커질수록 모델을 구성하는 방법에 대한 선택의 폭이 넓어짐.
반응형
'Study > Python' 카테고리의 다른 글
파이썬으로 살펴보는 아키텍처 패턴 - 13장 #1 (0) | 2021.11.01 |
---|---|
파이썬으로 살펴보는 아키텍처 패턴 - 12장 #3 (0) | 2021.10.31 |
파이썬으로 살펴보는 아키텍처 패턴 - 12장 #1 (0) | 2021.10.29 |
파이썬으로 살펴보는 아키텍처 패턴 - 11장 #3 (0) | 2021.10.28 |
파이썬으로 살펴보는 아키텍처 패턴 - 11장 #2 (0) | 2021.10.27 |
Comments