해결된 질문
작성
·
25
0
안녕하세요. 강의 수강중에 의존성 추가에 대해서 의문이 들어 질문드립니다. 제가 26강까지 듣고 올리는 질문이라 후속 강의에서 리팩토링 되는 것이라면 넘어가주세요!
멀티모듈 프로젝트에서는 각 모듈이 각자의 의존성을 갖고 관리하도록 하는 것으로 이해하고 있었는데요. 현재 강의에서는 아래 의존성들이 여러 모듈에 흩어져있습니다. 이렇게 되면 의존성 관리 포인트가 늘어나 단점이 생길 것 같은데요. 하나의 모듈에서 각자의 역할과 책임에 맞게 의존성을 관리하는 것에 대해 강사님의 생각이 궁금합니다!
spring data jpa
bank-domain
bank-event
resilience4j
bank-core
bank-api
만약 위의 의존성들이 각자의 모듈에서 관리된다면 다른 모듈에서 사용할 수 있도록 특정 기능들을 wrapping
해서 제공해주는 방법이 맞을까요? 아니면 혹시 더 좋은 방법이 있을지 궁금합니다.
spring data jpa
bank-domain
에서 save()
, 혹은 findById()
를 다른 모듈에서 사용할 수 있도록 인자만 받는 메소드를 제공한다면 bank-event
에선 id값 혹은 entity형식의 객체(필요시 model or dto 추가)만 넘겨 처리할 수 있으니 spring-data-jpa
의존성을 끊을 수 있을 것 같아서요.
답변 1
0
안녕하세요 1q2w3e4r님!! 질문 남겨주셔서 감사합니다 🙂
강의에서도 언급을 했는지... 제가 정확하게 기억은 나지 않는데, 이런 멀티 모듈의 형태가 사실 큰 기준이 없습니다. 각자가 원하는 스타일로 구현을 하면서 거기에서 최적의 형태를 찾아가면 좋습니다.
어디까지나 개인적인 생각입니다.
그리고 멀티 모듈을 구현한다는거 부터가 사실상 관리 포인트가 늘어난다는 점은 피해갈수 없는 부분입니다. 하지만 다른 부분에서도 장점을 가져 갈 수 있기 떄문에 도입하는 경우도 존재하는 것이죠.
그래서 작성자분께서 원하시는 방향으로 수정하셔서 구성을 해보셔도 좋습니다. 저도 할떄마다 일부 조금씩 변경하면서 사용하고는 합니다. 그러니 너무 크게 정해진 규칙에 맞춰서 작성하지 않으셔도 될꺼같아요!!
개인적으로 Spring과 JVM 계열을 사용하시는 분들이... 주로 이런 규칙이나 뭔가 딱 틀에 맞춰서 구현하고 사용하시는 경향이 많으시더라고요.. 저는 코딩은 창의적이고 자기만의 스타일을 지켜가면서 하는것을 좋아해서.. 개인적인 의견이니 어디까지나 참고해보시면 좋은 주제인거 같습니다.