공통 요소를 뽑아주는 Base 도메인을 만들었다. entity의 중복 제거는 처음 해보는데, 어노테이션으로 처리될 수 있는 부분이 있어 쉽게 했던 것 같다. 너목들에도 적용해볼만 한 것 같다. 특히 날짜를 db에 넣을 때 좋은 어노테이션이 있었다.
레이지 로딩이 객체 그래프 안의 값에 접근할 때, 해제되는 것으로 이해했다. 이유는 다른 곳에 할당해줘도 프록시 참조만 변경하는 식으로 되는 것으로 보였기 때문이다. 하지만 그렇지 않고 호출 하는 것 자체로도 쿼리가 실행됐다. 이걸 이용해서 OneToMany 컬렉션을 조회하지않고 카운팅하는 방향으로 최적화를 해봤다. 찾아보니 아예 스칼라쿼리를 컬럼에 박아넣는 것도 있었는데, 어쨌든 이런 동작을 이해한데에 의의를 두려고 한다.
스웨거 세팅이 생각보다 잘 되지 않았다. open api나 spring boot로 묶어놓은 디펜던시들의 고마움을 새삼 느낀다. 이런 것 까지 일일이 신경쓰며 세팅하기에는 노력과 수고가 너무 크다. 분명 똑같이 했는데 왜 안됐는지는 아직도 잘 이해가 되지 않는다.
깃 액션이 원본 레포지토리에서도 실행됐다. 그래서 일단 pull request시 배포하는 것과, 머지 대상 브랜치에서 배포되지 않도록 수정해줬는데, 이게 테스트 하기가 참 애매하다. 내 오리진 리모트에다가 테스트 해볼 수도 있지만, 포스 푸쉬를 해줘야 하는 상황이 올 것이기 때문에 귀찮은 상황이 생길 것 같았다. 그래도 테스트를 해줘야 할까? 살짝 고민이 되는 부분이다.
파이썬의 타입이 은근 정적이다. 은근 정적이라는게, 할당은 쉽지만 사용이 엄격하다. 캐스팅을 계속 해줘야 했다. 이외에도 맵 같은 함수를 써봤는데 확실이 코드가 짧긴 하다. 익숙해지면 과연 편해질지
내일부터 웹 서버 미션 시작이다. 노을과 같은 조가 됐다. 즐겁게 할 수 있을 것 같다 ㅎㅎ 페이징은 시간나면 잠깐 보는 식으로 해야겠다. 소팅은 잠깐 해봤는데 쉽게 구현됐다.