EmailSender 관련 문의
3
3 asked
안녕하세요.
강의 유익하게 잘 듣고 있습니다^^
한가지 문의 사항이 있습니다. Member.required.EmailSender 를 만약 instructor에서도 사용한다면 EmailSender를 공통으로 사용할 수 있게 Member 상위 폴더로 빼는게 맞겠죠?
Answer 1
0
안녕하세요, 인프런 AI 인턴입니다.
hack4569님, Instructor에서도 이메일 발송 기능을 사용한다면 Member.required.EmailSender를 그대로 참조하게 하기보다는, 특정 도메인에 종속되지 않는 공통 위치로 이동하는 것을 고려할 수 있습니다.
다만 단순히 Member의 상위 폴더로 옮기는 것이 항상 정답은 아닙니다. EmailSender가 여러 애그리거트에서 사용하는 애플리케이션 외부 연동 포트라면 다음처럼 공통 패키지에 둘 수 있습니다.
application
├─ member
│ └─ MemberService
├─ instructor
│ └─ InstructorService
└─ required
└─ EmailSender
또는 프로젝트의 구조에 따라 다음과 같이 외부 연동 포트임을 드러내는 이름을 사용할 수도 있습니다.
application
└─ port
└─ out
└─ EmailSender
핵심은 EmailSender가 회원(Member)의 개념인지, 아니면 회원·강사 등 여러 기능에서 사용할 수 있는 이메일 발송이라는 애플리케이션 공통 기능인지입니다. 후자라면 Member 패키지에 두면 Instructor가 Member 패키지에 의존하게 되므로, 공통 상위 패키지로 이동하는 편이 의존 방향과 책임 측면에서 더 자연스럽습니다.
다만 Member와 Instructor가 서로 다른 이메일 정책이나 메시지 생성 규칙을 가진다면, 단순히 하나의 EmailSender에 모든 책임을 넣기보다는 각 기능에서 필요한 메일 내용을 만들고 EmailSender는 실제 발송만 담당하도록 분리하는 것도 좋습니다.
관련해서 스프링 빈 등록과 EmailSender의 역할을 다룬 기존 답변을 참고해 보세요.
EmailSender, passwordEncoder 빈 주입 문의
EmailSender를 특정 도메인 로직에 종속시키기보다, 구현체와 빈 등록을 분리하는 방식에 대해 설명하고 있습니다.같은 계층에서의 의존성 관리 질문
애플리케이션 계층 간 의존 방향과 공통 기능의 의존성 관리에 대한 지식공유자님의 답변을 확인할 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
실기 이론 통합 요약본 버전
0
5
1
업캐스팅 3번 문제 예시
0
17
2
CRA ? 질문입니다
0
15
1
[해결됨]마지막 강의 내용 수정 화면이 기능을 못하네요.
0
14
1
[해결됨]부분적으로 화면 이동이 안되는 부분이 있습니다.
0
15
6
구글드라이브 접속 불가
0
17
2
2024년2회15~20
0
19
1
낙관적락 질문있습니다.
0
38
1
push pop 설명 되어있는 강의가 몇강인가요?
0
42
1
해당 결제 부분을 포폴에서 테스트 api를 적용에 대한 궁금증
0
36
0
댓글순서부여방식
0
40
1
유비쿼터스 언어와 class name
0
35
1
postgresql 인텔리제이 커뮤니케이션 버전에서는 실행 안되나요?
0
50
2
movablePageCount와 pageSize 상수
0
34
1
JPA와 네이티브 쿼리
0
40
1
aws 계정 생성 질문
1
50
1
Tasklet 배치 관련 내용
0
38
2
조회 메서드 네이밍 질문
0
52
1
핵사고날 아키텍처 기반으로 멀티 모듈 설계 시 질문드립니다..
0
62
2
내부 객체 직접 접근에 관하여.
0
91
2
InvalidCurriculumException DIP 적용 여부 문의
0
67
2
설계 트레이드 오프 링크 접속 안됨
0
130
2
헥사고날 아키텍처와 DDD를 적용할 때, 화면에 강하게 연관된 조회 데이터를 어떻게 다루는 게 좋은지 궁금합니다.
0
177
2
Request DTO에서 Entity를 생성할 때 의존성 방향을 반대로 하면 어떨까요?
0
157
2

