스프링 프로젝트 패키지 구조

murkgom·2022년 6월 21일
0

참고

기존 계층형 구조에서 도메인 구조로 변경할까 고민한 내용

대부분 별 상관없을 것 같은데, 우려되는 사항들만 작성해봤다.

Case1. 새로 투입된 프로젝트

=> 코드 분석을 하자

계층형

  • Controller package에 가서 어떤 Controller들이 있는지 파악
  • But, 한 도메인에 해당하는 Controller가 많이 세분화 해놓았다면? (T.T)

도메인형

  • package명으로 도메인 종류를 파악

Case2. Enum 활용

=> 기존에 누가 만들어놨을까 체크

계층형

  • 한 곳에 모여있으니 보기 편함

도메인형

  • 특정 예상되는 도메인의 패키지로 찾아가보기
  • Enum 클래스 Naming에 특정 suffix를 넣지 않는 이상 파악 어려움
  • IDE에서 enum들만 검색하는 방법이 있긴 할 것 같은데...
  • global package에 모아놓기? 도메인 base에 어긋나는 느낌

Case3. MSA로 가자!

=> 이미 나눠져있는 도메인형이 꿀!
- But, 갈 일이 있을까...?

결론

  • 코드를 많이 세분화할거면 도메인형도 고려해볼만 하다~

0개의 댓글