개요
서비스 패턴을 적용하여 비즈니스 로직과 라우팅 로직을 분리하는 것은 더 나은 코드 구조를 만들기 위한 중요한 설계 원칙이다.
그래서 뭐가 좋은거지???
1. 책임분리
라우터는 HTTP요청의 라우팅과 관련된 작업에 집중, 서비스는 비즈니스 로직을 처리
2. 재사용성
비즈니스 로직이 서비스로 분리되면, 이 로직은 여러 곳에서 재사용 될 수 있다. 코드 중복을 피할 수있음
3. 테스트 용이성
서비스는 비즈니스 로직만을 포함하므로, 라우팅이나 다른 로직들이 분리된 상태에서 쉽게 단위 테스트를 할 수 있다.
4. 유지보수성
코드가 명확하게 분리되면, 특정 기능을 수정하거나 확장할 때 수정 범위를 줄일 수 있다.
5. 확장성
애플리케이션이 커지면서 복잡해질때, 서비스 패턴을 통해서 복잡도를 낮출 수 있다.
JavaScript
복사
고양이 전체 조회
cat service
여기서 체크 해야될 포인트는
→ readAllcat 함수 선언
→ export 키워드로 다른 곳에서 가져다 쓸수 있게 설정
→ 그리고 HTTP 통신을 위해서 Request, Response를 주입
cat route
이렇게 해당 함수를 import해서 readAllcat으로 주입
특정 고양이 데이터 조회
위와 같이
→ export
→ 함수선언
라우터 임포트
새로운 고양이 추가
이것도 로직은 같음
라우터 임포트
고양이 업데이트 하기
이것로 로직 같음
라우터 임포트
고양이 삭제하기
로직 위와 같음
라우터 임포트