Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

#281 [chore] 패키지 구조 변경 #282

Merged
merged 5 commits into from
Jul 18, 2024
Merged

#281 [chore] 패키지 구조 변경 #282

merged 5 commits into from
Jul 18, 2024

Conversation

KWY0218
Copy link
Member

@KWY0218 KWY0218 commented Jul 18, 2024

✒️ 관련 이슈번호

Key Changes 🔑

저희는 패키지 컨벤션으로 Layerd Architecture 구조로 패키징을 했습니다.
하지만 개발 초 서로 멋 모르고 파일을 생성했고, 그 결과 명확하지 않은 패키지 구조를 가지고 있단 생각이 들었습니다.

이를 해결하기 위해 presentation, service, persistence 패키지를 만들어서 계층형 패키지임을 명시했습니다.
또한, 각 계층에서 사용하는 파일들을 구분해서 각 계층 별 config와 common 패키지를 만들었습니다.
마지막으로 모든 계층에서 공통적으로 사용하는 파일들은 common 패키지로 이동했고, 외부 라이브러리를 사용하는 파일들은 infra 패키지로 이동했습니다.

To Reviewers 📢

개선하고 싶은 점

image

현재 이미지와 같이 service 계층에서 presentation 계층을 참조하고 있는 것을 볼 수 있고, 이로 인해 service 계층과 presentation 계층이 양방향으로 참조되고 있다고 볼 수 있습니다. 따라서 service 계층이 presentation 계층을 참조하지 않는 작업을 제안하고 싶습니다..!


Read Me에 들어 갈 패키지 구조

├─common # 각 계층에서 공통으로 사용하는 유틸리티와 예외 처리 기능을 제공합니다.
│  ├─exception
│  ├─jwt
│  └─utils
├─infra # 외부 API 통합 및 외부 시스템과의 연동 설정을 담당합니다.
│  ├─redis
│  └─slack
├─persistence # 데이터베이스와의 상호작용을 위한 영속성 관련 기능을 제공합니다.
│  ├─config
│  ├─domain
│  └─repository
├─presentation # 사용자의 요청을 처리하고 응답을 반환하는 UI 관련 기능을 제공합니다.
│  ├─common
│  ├─config
│  └─controller
└─service # 애플리케이션의 핵심 비즈니스 로직을 구현합니다.

이렇게 작성하려 합니다.
추가하거나 보완하고 싶은 부분 있으면 리뷰 남겨주세요!!

모든 계층이 공통으로 사용하는 파일 위주로 패키징했습니다
외부 라이브러리를 사용하는 파일 위주로 패키징했습니다
DB와 연관된 영속성 계층과 관련된 파일 위주로 구성했습니다
사용자 인터페이스(UI)와 관련된 파일들 위주로 패키징했습니다
persistence , presentation 패키지 구조 변동으로 인한 import문 수정
@KWY0218 KWY0218 requested a review from sohyundoh July 18, 2024 12:22
@KWY0218 KWY0218 self-assigned this Jul 18, 2024
Copy link
Member

@sohyundoh sohyundoh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

좋습니다! 앞으로 열심히 해봅시다!

@KWY0218 KWY0218 merged commit 656a43a into develop Jul 18, 2024
4 checks passed
@KWY0218 KWY0218 deleted the feat/#281 branch July 18, 2024 13:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[chore] 패키지 재정의
2 participants