오늘 한 일
✔️ Algorithms
✔️ Scoup 프로젝트
✔️ 스프링
- 스프링 핵심 원리 section 8 빈 생명주기 콜백 재수강
느낀 점
- 생성자의 주된 역할은 파라미터로 필수 정보를 받고, 메모리를 할당하여 객체를 생성하는 것이기 때문에 초기화 작업은 생성자와 분리한 초기화 메서드에서 처리하는 것이 좋다고 한다. 생성자와 초기화 메서드를 분리하면 객체 생성과 초기화 사이에 텀을 둘 수도 있고 유지보수에도 유리하다. 그냥 앞으로 단순한 값 초기화를 제외한 건 생성자 밖에서 처리해야겠다.
- Scoup 프로젝트 배포를 완료했다. 일단은 CI/CD 설정 없이 AWS로 수동 배포했는데 다음주까지 Jenkins에 대해 공부하고 CI/CD 환경을 구축해가기로 했다.
- 오늘은 Scoup 프로젝트 전체 회의를 1시간 안에 끝낼 수 있었다. 지난 주보다 계획도 체계적으로 세운 것 같아 뿌듯하다.
- 끝나고 백엔드 회의를 하는데 트러블슈팅 문서를 만들 것을 제안했다. 새리랑 프레디도 흔쾌히 동의를 해주었다. 지금까지는 나만 볼 거라고 생각하고 대충 적었는데 앞으로는 조금 더 정성을 들여 적어야겠다.
- 프레디가 expected 객체를 provider에 넣고 recursiveComparision으로 객체 비교하는 방식 말고 json 문자열을 provider에 넘겨주는 방식으로 테스트 작성 방식을 수정해보는 것은 어떻겠냐고 제안했다. 객체 비교 만으로는 테스트가 제대로 작성되었는지 한 눈에 파악하기 어렵다는 것이 이유였다. 나는 Builder와 log에도 계층 구조가 드러나니까 괜찮지 않겠냐는 입장이었는데, 프레디가 이번에 디버깅을 하는데 어려움을 겪으신 것 같고 나는 아직 겪어보지 못했으니까 프레디 의견을 따라 테스트 작성 방식을 수정하는데 동의했다. 처음에는 지저분한 문자열이 거슬렸는데 프레디 말씀대로 groovy를 사용하거나 하면 될 것 같다.
- 데이터베이스 초기화 부분 코드를 작성하는데 새리가 디버깅을 도와줬다. 아이디 컬럼이 존재하지 않는다고 떠서 헤매고 있었는데 전후에 따옴표를 붙이니 해결되었다.