이전 게시물에서 커스텀 레포지토리를 활용한다고 했다. typeorm에서 커스텀 레포지토리 문서를 제공하긴 하나 typeorm에 지나치게 의존하게 된다는 느낌이 들어 인터페이스를 활용해보기로 했다. 인터페이스 user.repository.ts export interface UserRepository { findById(id: number): Promise; } 인터페이스를 사용하게 된 이유? - 확장성. typeorm 구현체를 사용하게 될 경우, 다른 orm 라이브러리로 갈아타게 될 일이 생길 때 리팩토링 비용이 많이 들 것이다. 또한 typeorm에서만 통하는 문법이 있어 다른 개발자가 봤을 때 이해하기까지 시간이 더 걸릴 수 있다. 이에 공통으로 통용되는 방식을 차용해 접근성을 높이고, 다른 라이브러리..