Repository와 Service의 역할 차이

곽태민·2023년 3월 24일
0

TIL

목록 보기
58/63

Repository와 Service의 역할 차이

1. 개요

개발을 하다가 Repository와 Service의 차이점에 대해서 궁금점이 생겨서 알아보게 되었다. 기존에 내가 알기로는 Repository는 DB와 직접적으로 작업되는 로직이고 Service는 Business Logic이라는데,, 코드리뷰를 받아보니 너무 이렇게 하면 안된다해서 알아보기로 했다.


2. 차이점

💡 Repository = DB 접근하는 코드를 모아놓는다. Service = DB에 직접 접근하는 걸 Repository에 맡기고 Business Logic에 집중하는 곳이다.

이렇게 알아봐도 Business Login이 뭔지 이해가 잘 안가고 아직도 차이점이 와닿지가 않아서 더 알아보기로 했다.


3. Business Logic

💡 DB와 User Interface간 정보 교환을 다루는 알고리즘

이렇게 단순히 정의로만 보면 이해가 잘 되지 않아서 예시를 들어보려고 한다.

예를 들면 홈페이지 회원가입을 할 때 사용자는 회원가입 양식에 맞게 회원정보를 작성하고 회원가입 버튼을 누르게 되면 회원가입이 완료된다.

이 과정에서는 아이디 중복 검사와 본인 인증, 비밀번호 재확인 등등 사용자가 통과해야할 것들이 많다.

반대로 코드쪽에서는 아이디 중복검사를 위해 DB를 조회하고, 중복된 아이디가 없으면 통과를 시켜준다.

이처럼 사용자가 사용할때 사용도는 코드들을 Business Logic이라고 한다. Business Logic은 프로그래밍에서 아주 중요하고 사용자가 바라는 결과물을 도출하기 위해서 코드를 짜야되므로 코드의 품질도 중요하다.

profile
Node.js 백엔드 개발자입니다!

0개의 댓글