Search

#011 #서비스 패턴

 개요

서비스 패턴을 적용하여 비즈니스 로직과 라우팅 로직을 분리하는 것은 더 나은 코드 구조를 만들기 위한 중요한 설계 원칙이다.

 그래서 뭐가 좋은거지???

1. 책임분리 라우터는 HTTP요청의 라우팅과 관련된 작업에 집중, 서비스는 비즈니스 로직을 처리 2. 재사용성 비즈니스 로직이 서비스로 분리되면, 이 로직은 여러 곳에서 재사용 될 수 있다. 코드 중복을 피할 수있음 3. 테스트 용이성 서비스는 비즈니스 로직만을 포함하므로, 라우팅이나 다른 로직들이 분리된 상태에서 쉽게 단위 테스트를 할 수 있다. 4. 유지보수성 코드가 명확하게 분리되면, 특정 기능을 수정하거나 확장할 때 수정 범위를 줄일 수 있다. 5. 확장성 애플리케이션이 커지면서 복잡해질때, 서비스 패턴을 통해서 복잡도를 낮출 수 있다.
JavaScript
복사

 고양이 전체 조회

 cat service

여기서 체크 해야될 포인트는 → readAllcat 함수 선언 → export 키워드로 다른 곳에서 가져다 쓸수 있게 설정 → 그리고 HTTP 통신을 위해서 Request, Response를 주입

 cat route

이렇게 해당 함수를 import해서 readAllcat으로 주입

 특정 고양이 데이터 조회

위와 같이 → export → 함수선언
라우터 임포트

  새로운 고양이 추가

이것도 로직은 같음
라우터 임포트

 고양이 업데이트 하기

이것로 로직 같음
라우터 임포트

 고양이 삭제하기

로직 위와 같음
라우터 임포트

 전체 코드

cat.route.ts

cat.service.ts