Section 1. 리팩토링
1. 리팩토링 (Refactoring)
외부 동작 결과의 변경 없이 코드의 내부 구조를 개선하는 작업으로 주로 가독성을 높이고 유지보수를 편하게 하기 위함이다.
2. form clean 함수와 model 처리
- 위와 같이 form 에서 clean 함수를 이용해 모델 처리 로직을 수행했는데 clean 함수는 유효성 검사만 수행하는 것이 원칙적이므로 form 과 model 관련 처리 로직을 분리 해야함
3. 회원가입 리팩토링 수행
- clean 함수에서 model 생성 코드 제거
- View 에서 model 생성 코드 수행
- clean 함수에서 ID / PW 유효성 검사를 모두 수행했으므로 form_valid 는 문제없는 경우에 수행됨
4. 상품 등록 리팩토링 수행
- clean 함수에서 product 생성 코드 제거
- View 에서 product 생성 코드 수행
5. 주문하기 리팩토링 수행
- clean 함수에서 user = self.request.session.get('user') 와 order 생성 코드 제거
- View 에서 order 생성 코드 수행