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

refactor: 카카오 로그인 관련 로직 DataSource 리팩터링 #931

Open
wants to merge 11 commits into
base: develop
Choose a base branch
from

Conversation

kimhm0728
Copy link
Contributor

@kimhm0728 kimhm0728 commented Dec 21, 2024

🚩 연관 이슈

close #930


📝 작업 내용

  • Login -> Auth 네이밍 변경 (LoginRepsitory에 로그아웃, 탈퇴 함수들까지 같이 있어서 Auth가 더 적합하다 판단했어요)
  • LoginService, LogoutService, MemberService -> AuthService 하나로 관리
  • KakaoAuthRepository -> DataSource 도입
  • 로그인 관련 로직 리팩터링
  • 로그인 관련 로직 함수명 변경

🏞️ 스크린샷 (선택)


🗣️ 리뷰 요구사항 (선택)

스크린샷 2024-12-21 오후 2 11 49

기존에는 data 패키지 하위에 local, remote 패키지만 있어서 local or remote 내부에 repository를 위치시켰는데, KakaoAuthRepository는 local과 remote 둘다 포함하고 있어서 어떤 패키지에 위치 시�킬지 애매하더라고요.
그래서 위 사진처럼 data/auth 패키지를 따로 두었습니다.
추후에는 data 패키지 바로 하위에 repository 패키지가 있어도 괜찮을 것 같아요. !!!
일단 더 고민해보고 data 패키지 관련 구조 변경 이슈는 따로 팔 예정입니다.. 혹시 괜찮은 의견 있다면 공유 부탁드려요!!

Copy link
Contributor

@haeum808 haeum808 left a comment

Choose a reason for hiding this comment

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

고생하셨습니다~

import com.mulberry.ody.domain.model.AuthToken
import javax.inject.Inject

class DefaultRemoteAuthDataSource
Copy link
Contributor

Choose a reason for hiding this comment

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

DefaultRemoteAuthDataSource -> KaKaoRemoteAuthDataSource 어떤가요?

Default로 네이밍한 이유가 궁금합니다!

import retrofit2.http.POST

interface LoginService {
interface AuthService {
Copy link
Contributor

Choose a reason for hiding this comment

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

너무 좋다고 생각합니다.

@@ -12,7 +12,7 @@ import javax.inject.Inject
@AndroidEntryPoint
class FCMService : FirebaseMessagingService() {
@Inject
lateinit var fcmTokenRepository: FCMTokenRepository
lateinit var odyDatastore: OdyDatastore
Copy link
Contributor

Choose a reason for hiding this comment

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

자연스러워졌네요!

@haeum808
Copy link
Contributor

haeum808 commented Dec 21, 2024

지금와서 보니 local, remote로 리포지토리를 나누는게 이상한거 같네요!

local, remote 패키지 없애고 리포지토리만 있어도 괜찮을거 같아요

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

refactor: 카카오 로그인 관련 로직 DataSource 리팩터링
2 participants