🤦♂️ 현재 코드의 문제점
현재 Mlog 백엔드 서버는 아래와 같은 문제점이 존재한다.
- 기능 구현에 집중하여 코드가 복잡하다.
- 객체지향프로그래밍을 통해 전체적인 코드의 복잡도를 해소할 계획이다.
- API의 엔드포인트가 RESTful 하지 않다.
- RESTful API의 엔드포인트는 자원의 상태를 나타내고, 몇몇 규칙을 따라야한다. 하지만 현재 그렇지 못한 엔드포인트가 존재하여 수정할 계획이다.
- 포스트 목록을 불러올 시
N + 1 문제
가 발생한다.
- 이 부분에 대해서는 최근에 JPA 강의를 들으며 문제점이란 것을 알게 되었다. 추후에
N + 1 문제
가 무엇인지, 어떻게 해결해야하는지를 다뤄보도록 하겠다.
- 쿼리가 불필요한 컬럼까지 조회한다.
- 현재 쿼리는 DB의 모든 컬럼을 조회한다. 이는 시스템의 자원을 더 사용하기 때문에 수정해야 한다. DTO를 이용한 조회로 필요한 컬럼만 불러오도록 할 예정이다.
- DTO가 너무 많아 유지보수의 어려움이 있다.
- 현재 DTO를 각 API 별로 만들어두었기 때문에 기능이 더 추가가 된다면 유지보수가 어려울 것으로 예상된다. 따라서 DTO를 수정할 계획이다.
- 최소한의 주석이 없어 유지보수의 어려움이 있다.
- 기능개발에 급급하여 주석을 작성하지 않았다. 주석을 작성하여 코드의 가독성을 올려볼 예정이다.
앞으로 문제 해결 과정을 까먹지 않기 위해 게시할 예정이다.