개발일기 - 2022-05-09

jude Kim·2022년 5월 9일
0

개발일기

목록 보기
6/28

월요일에는 보통 출근을 했는데 이번주는 내일 출근 예정이라 재택을 했다.

오늘 할일은

  • Episode
  • Policy

기본 틀은 다 짜여져 있어서 큰 어려움은 없었다.

다만, 테스트 코드를 작성하는 것이 아직 머릿속에 익숙하지 않아서 어려움이 좀 있다.
내일부터는 동영상 강의를 듣고, 테스트 관련 책을 보고 생각을 좀 해야겠다.
TDD 기반으로 하는게 좋다는 생각을 하지만, 막상 손은 이미 구현코드쪽으로 가고 있다.

테스트 코드를 짜면서 Reference 기반의 변수때문에 삽질을 좀 했다.
( data class 내부의 map도 reference로 참조하기 때문에 copy를 해두고 써도 map은 동일한 것을 참조하고 있어서 한쪽에서 키를 기반으로 remove 할때 같이 삭제 되는 것때문에.. )
meta 부분은 양날의 검이다.
진짜 필요한 경우에만 쓰고 가급적 지양하는쪽으로 진행해야겠다.

객체의 가변성을 meta property (jsonb) 로 정의하고 해결할려 했더니 생각보다 걸리는 부분들이 좀 있다.

이를 테면 가변성을 위해
meta = mutableMapOf<String, Any?> 타입으로 구현을 하다 보니
시간 정보를 저장할때도 명시적으로 LocalDateTime.now().toString() 으로 지정하지 않으면 Json Serializer 에 따라 다르게 저장된다.

Policy 의 경우 relation으로 관리하는데, 이러다 보니 수정하는 것은 굉장히 위험한 일이라 아예 update API 는 제공하지 않는다.

Status 라도 수정할 수 있도록 고민했지만,

  • workaround(relation의 삭제) 가 있고,
  • default 값이 사라지는 문제가 생길 수도 있고,
  • 문제발생시 여파를 산정하기가 어려워

그냥 하지 않기로 결정했다. ( 나중에 그 케이스가 생기면 고민해보는게 좋겠다. )


오전에 앙봉이(우리집 햄스터 이름)의 취선에서 붉게 물들고, 피도 맺혀 나와서 급하게 동물병원을 찾았다.

햄스터 커뮤니티에서 부랴부랴 병원을 알아보고, 나름 가까운데 있는 서울종합동물병원 에 갔다. (서울이지만 안양에 있다. 저 서울은 서울대학교출신을 의미하는듯 )
취선염이라는 비교적 간단한 일이기를 기대하며 갔지만, 종양이라 수술을 해야 한다는 청천벽력과 같은 얘기를 듣고, 아내와 둘째가 눈물을 쏟기 시작했다.
가족이라 생각했던 아이라서 바로 수술을 했고, 다행히도 수술은 잘 마무리가 되었다.

그리고, 동물병원의 수술비가 이번달 청구서에 더해졌다. 78만원
생명을 값으로 매길수는 없지만 누군가에게는 쉽게 결정하기 힘든 금액이고, 다시한번 반려동물은 정말 신중하게 책임과 능력을 기반으로 선택해야한다는 생각을 재확인했다.

지금은 너무 놀고 싶어 발버둥 치는 녀석을 보면서 다행이라 생각이 든다.

profile
씨봉봉이

0개의 댓글