개발일기 - 2022-05-23

jude Kim·2022년 5월 23일
0

개발일기

목록 보기
20/28

몸상태 안 좋은지 14일째 - 약간 정상적이지 않은 정도. 잠을 많이 못자서 그런것도 있는듯

재택근무

오전

  • DailyScrum
  • 간단한 Code 관련 변경 사항 전달

오후

  • 코드 정리 TypeCasting 관련 이슈
  • ObjectBuilder 정규표현식 오류 수정
  • 테스트 코드 작성
  • Episode Controller 개발

오늘은 평상시보단 조금 늦게 9시경에 출근했다.

오늘의 이슈

  1. 서비스용 API 개발 시작
  2. Reflection 관련 TypeSafe 방법 찾기
  3. 정규표현식 버그 수정
  4. 코드 Refactoring 과정에서 TypeCasting 오류 수정
  5. 테스트 코드 작성진행하다 리팩토링

그나마 주말에 문제가 될 큰 산은 넘었다 생각했는데, Type Casting 복병을 만났다. 큰 문제가 아니라고 생각했는데, Object 를 특정 객체로 Casting이 안된다고 하는 에러메시지였지만, 정작 이슈는 없는 객체로 변환 하려니 생겼던 문제였다.

얼마전 팀원의 테스트케이스 오류와 유사한 케이스였다.

하필 일부 리팩토링을 진행하면서 확인한 사항이라 원인을 엉뚱한데서 찾고 있었지만, Queue Consume 이랑 겹쳐서 원인을 찾기 정말 어려운 상황이었다.

삭제된 항목을 Queue 로 날려 빌드가 안되는 상황이었는데, 중간에 데이터가 없을때를 대비한 코드가 제대로 갖추어져 있지 않아 발생한 것이었다.

TDD로 개발했어도 오류에 대한 테스트를 거치지 않았다면 찾기는 어려웠겠지만서도..

암튼 한 3시간은 버린것 같다.

서비스용 API 개발은 서비스들이 다 갖추어져 있어 그리 어려운 일이 아니었다.

정규표현식은 쉽지 않았다.
정규표현식은 그래도 쉽게 진행한다 생각했지만 케이스를 다양하게 테스트 코드를 짜두지 않으면 나중에 사고를 한번 치지 않을까 싶다.

테스트 코드를 짜면서 왜 이걸 이렇게 짰지 생각이 들었던것들 좀 정리했다.

좀전엔 Object Util 함수를 TypeSafe 하도록 수정하였다.
맘에 100%는 아니지만 코드가 그나마 정리되었다.

앞으로 처리해야할 것들

  • R2DBC Pool에서 DB서버를 Restart하면 제대로 Reconnect 하지 못하는 현상이 있는 것 같다. ( R2DBC는 끝이 없다... 내가 설정을 잘못했을 수도.. Mysql 에서도 비슷한 상황에 대한 Issue가 등록된것을 본적이 있긴하다. )
  • Inventory API 및 까다로울 것으로 예상되는 가상 InventoryItem 에 대한 처리를 진행해야 한다.

잠을 제대로 못자서인지 몸이 피곤하다.

자야지.. 했는데 내일 미팅 준비해야 한다.

끝.

profile
씨봉봉이

0개의 댓글