항해 62일차 회고(2022-03-14)

Lee·2022년 3월 15일
0

항해99

목록 보기
38/50

일정

  • 알고리즘 스터디
  • 실전 프로젝트 작업
    • 검색 시 중복 결과 제거 및 쿼리 작업
    • 전체 조회 시 페이징 처리
    • 채팅 관련 코드 리팩토링
  • 전체 회의
    • 캐릭터 디자인 완성
    • 캐릭터 레벨 이름 공모전
    • 추후 작업 방향 논의

회고

실전 프로젝트

백엔드의 MVC 작업이 거의 완료되어 담당 영역의 코드 리팩토링과 함께 새로운 무한 스크롤 기능을 담당하게 되었다.

코드 리팩토링

여러 수정사항을 거치면서 채팅 메세지 관련 로직에 중복이 넘치고 쓸데없는 코드가 난무하는 상태였다. 따라서 코드를 분석해 중복된 것들은 합치고 의미없는 코드를 삭제해서 1/3 정도로 코드를 압축할 수 있었다.

페이징 처리

저번 회의 결과 무한 스크롤을 사용하는 방향으로 결론이 나서 이를 위한 전체 조회 시 페이징 처리를 해 주었다. spring data jpa에서 지원하는 기능을 사용해 pageable을 이용해 어렵지 않게 페이지를 나누었고 추후 프론트와 논의 후 주고받는 데이터와 페이지 수 등에 대해 결정 할 것 같다.

검색 기능

페이징 처리를 하면서 검색 시의 페이징 처리가 필요했는데 문제가 발생했다. 다른 조원이 구현한 검색 기능은 DB에서 모든 데이터를 조회한 후 반복문을 이용해 검색 조건에 맞는 데이터만 리스트에 집어넣는 형태여서 페이징 처리를 위해 검색 기능을 수정하게 되었다.
JPQL을 사용해 검색어가 챌린지 제목, 카테고리, 태그에 포함될 시 값을 가져오게 변경했고 중복 결과는 제거하도록 했다.

profile
발전하고 싶은 백엔드 개발자

0개의 댓글