TIL

TIL_20230710

번잔중 2023. 7. 10. 23:44

📝 하루 요약

공모전 프로젝트의 package 구조가 거슬려서 domain 별로 나눠주고, 숫자 짝꿍을 찾아냈습니다!

✅ 오늘 할 일

  • 프로그래머스 문제 풀기
  • 공모전 - package 구조 변경하기
  • 운동하기 - 웨이트 트레이닝

🧐 오늘 배운 것

프로그래머스 문제 풀기

공모전 - package 구조 변경하기

기존 구조(좌)와 변경된 구조(우)

  • 기존 구조 - Member 도메인 내에 Profile과 Mentor가 함께 위치해 있습니다.
    • /member/controller/MemberController
    • /member/controller/ProfileController
    • /member/controller/MentorController
  • 변경된 구조 - Profile, Mentor 도메인을 각각 나눠서 분리해주었습니다.
    • /member/controller/MemberController
    • /profile/controller/ProfileController
    • /mentor/controller/MentorController
  • 변경을 하게된 이유
    • Member 도메인 하나에 Profile과 Mentor을 함께 배치했던 이유는 Member와 Profile, Mentor는 연관성이 짙다고 생각했기 때문입니다.
    • 그런데 package 구조를 보니 각 레이어별로 너무 많은 클래스, 인터페이스가 선언되다 보니 가독성이 떨어진다는 느낌을 많이 받게 되었고, 이를 계기로 구조를 변경하기로 했습니다.
  • 결과
    • 각각 나눠서 보관하니 결합력은 다소 줄었으나 가독성이 높아져서 구현할 때, 크게 헤메는 일 없이 구현하고 있습니다. 특히, Querydsl을 사용하게 되면 Repository 레이어에 Repository 관련 클래스와 인터페이스가 3개 생성될 예정이라서 미리 구조를 바꾸길 잘했다는 생각이 듭니다.

운동하기 - 웨이트 트레이닝

27일차!

💡 느낀점

  • package 구조에 대해 프로젝트 시작부터 계속 고민해왔습니다만 늘어나는 DI와 메서드들이 너무 많아져서 분리를 하게 됐습니다. 가독성이 좋아진 것이 무엇보다도 좋은 부분입니다!ㅎㅎ

📢 내일 할 일

  • 프로그래머스 문제 풀기
  • 공모전 회의

'TIL' 카테고리의 다른 글

TIL_20230712  (0) 2023.07.12
TIL_20230711  (0) 2023.07.11
TIL_20230709  (0) 2023.07.09
TIL_20230708  (0) 2023.07.08
TIL_20230707  (0) 2023.07.07