Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- 부트캠프
- 패스파라미터
- JSON Web Token
- 레포지토리
- 메뉴바
- 네비게이션 한번에
- 스테이지어스
- N+1
- 게시글 이미지
- 게시글 이미지 업로드
- unnest
- 메뉴바 한번에
- 포트번호
- 알림생성
- Winston
- element.style
- getComputedStyle
- N+1문제
- 알림생성모듈
- 토큰
- secret코드
- JWT 쓰는 방법
- 쿼리스트링
- 이미지가 포함된 게시글
- JWT 쓰는이유
- 환경변수
- route 53
- JWT
- 3계층구조
- .env
Archives
- Today
- Total
기주
모듈 분리 / 서비스 코드 분리 기준 본문
모듈 분리, 서비스 코드 분리 기준에 대해 생각해보자 각각 언제해야할까?
예를들어 댓글 CRUD기능과 댓글 좋아요기능이 있다고 가정해보자
그럼
1. 댓글 CRUD기능과 댓글 좋아요 기능의 서비스 코드를 분리해야할까?
-> 특정 서비스내의 메서드들 중에서 어떤 것은 export를 해야하고 어떤 것은 export를 할 필요가 없다(해서는 안된다).
이때 각 메서드들은 별도의 클래스로 분리해야한다( 객체지향설계 SOLID 중 인터페이스 분리 원칙)
(인터페이스 분리 원칙 : 클라이언트가 자신이 이용하지 않는 메서드에 의존하지 않아야 한다는 원칙이다. -> 사용하지않는 불필요한 메서드
들은 가져오면 안된다. 꼭 필요한 메서드들만 주입 받아야한다 )
2. 댓글 CRUD기능과 댓글 좋아요 기능의 모듈을 분리해야 할까?
-> 모듈단위는 개발자가 유지보수하는 단위이다.
어떤 기능을 하나 수정해야한다면 개발자는 적어도 해당 기능이 속한 모듈(디렉토리) 전체를 한번씩 볼 필요가 있다
어떤 기능을 하나 수정해야한다면 그 기능이 속한 모듈내에서만 수정하도록 만드는 것이 좋다.
만약 하나의 기능을 수정한다고 했을때 여러 모듈을 다 뒤져서 수정하지 않도록 만드는 것이 좋다
각각의 기능이 독립적이고 서로 참조할 일이 없다면 별도의 모듈로 분리하는게 좋다
'TIL' 카테고리의 다른 글
오버라이딩, 오버로딩 (0) | 2024.07.02 |
---|---|
테스트 코드로 알아보는 DI (0) | 2024.06.10 |
의존성 주입(Dependency Injection) (0) | 2024.06.10 |
[nest.js] swagger 적용하기 (0) | 2024.05.29 |
[ERROR] ReferenceError: exports is not defined in ES module scope (0) | 2024.05.28 |