프로젝트 패키지 구조 관리

Ryu·2022년 9월 14일
0
post-thumbnail

프로젝트를 진행하면서, 패키지 구조를 어떻게 할 지에 대해 고민을 해보았다.
다양한 방법들이 있지만 팀원들끼리 정한 방식은 도메인을 기준으로
Controller, Service, Repository 를 담고
그 안에는 form 패키지를 두어 dto 같은 것들을 담아두는 방식으로 결정했다.

✅ 프로젝트를 진행하다가, 더 좋은 패키지 구조에 관해서 고민해보다가 더 좋은 구조를 알게 되었다.

  • 실제로 프로젝트를 진행해보면서 느끼게 된 것이라 무엇이 더 좋은지 체감이 됐다.

    • 위와 같이 도메인은 각각 service, repository를 담고 url 매핑을 관리하는 controller 는 web이라는 패키지에 따로 관리한다.
    • web 패키지를 살펴보면, controller, doto, service 가 있는데 말 그대로 url 매핑에 필요한 기능들은 모두 한 곳에 관리하는 것이다.
      service가 도메인에서도 관리되는데 왜 또 있는지 알아보니, web 안에 또 기능 별로 패키지를 관리해 해당 기능에 맞는 service를 두고, 여기서 도메인에서 만들어 둔 service 들을 가져다 쓰는 방식인 것이다.
    • 이렇게 각 객체(도메인 별, 기능 별)가 맡는 역할로 명확히 구분해 관리하는 것이 객체지향 방식에도 부합하고, 유지 및 보수에도 훨씬 유리하다는 생각이 들었다.
profile
Strengthen the core.

0개의 댓글