Skip to content

Conversation

@s9hn
Copy link
Member

@s9hn s9hn commented Apr 29, 2025

📌𝘐𝘴𝘴𝘶𝘦𝘴

📎𝘞𝘰𝘳𝘬 𝘋𝘦𝘴𝘤𝘳𝘪𝘱𝘵𝘪𝘰𝘯

  • 공용 소셜로그인 모듈 구현
  • 카카오로그인 모듈 구현

💬𝘛𝘰 𝘙𝘦𝘷𝘪𝘦𝘸𝘦𝘳𝘴

추후 도입될 수 있는 기타 소셜로그인을 고려해, 소셜로그인 추상화 모듈 및 인터페이스를 구현합니다.
외부 라이브러리인 특정 플랫폼 소셜로그인들은 별도의 모듈로 분리 및 관리하며, 공용 모듈인 auth 모듈에서 qualifier를 통해 구분합니다.
분리된 카카오 로그인 로직은 현재 웹소소 LoginActivity 코드로 테스트 진행했으며 문제없습니다!

  • 이전 PR이 닫히기전에 이어서 작업하고 PR올려버려서 네트워크 모듈까지 같이 올라왔네요 ^^;;

@s9hn s9hn added 🍯 [FEAT] 새로운 기능을 개발합니다. ♻️ [REFACTOR] 기존 코드를 리팩토링합니다. ⚖️ 재상 세훈 전지적 세훈 시점 🚧 [BUILD] 빌드 업무 수정, 패키지 매니저 수정합니다. labels Apr 29, 2025
@s9hn s9hn self-assigned this Apr 29, 2025
@s9hn s9hn changed the title Feat/659 refactor: 소셜로그인 클라이언트 모듈 구현 Apr 29, 2025
@github-actions github-actions bot requested review from junseo511, m6z1 and yeonjeen April 29, 2025 17:11

@Qualifier
@Retention(AnnotationRetention.BINARY)
annotation class KakaoAuth
Copy link
Member

Choose a reason for hiding this comment

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

오 이건 무엇이죠 annotation 을 만들 수 있는 건가요?

Copy link
Member Author

Choose a reason for hiding this comment

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

어노테이션 클래스는 말 그대로 명시적인 어노테이션만을 위한 클래스입니다.
레벨4에 배우게 될테지만, 보통 힐트에서 동일한 타입의 인스턴스를 구분할 때 사용합니다.
예시) AuthProvider 라는 인터페이스로 소셜로그인을 추상화할 때,
KakaoAuth: AuthProvider
GoogleAuth: AuthProvider
힐트는 AuthProvider를 @Inject 요청하는 곳에 어떤 AuthProvider 구현체를 주입해줘야하는지 모릅니다.
이럴 때 어노테이션 클래스를 만들고 이를 활용해 어떤 구현체를 주입받아야하는지 힐트에게 알려줄 수 있습니다.
이를 Qualifier(한정자)라고 합니다

@s9hn s9hn merged commit 562afcc into feat/657 Apr 30, 2025
@m6z1 m6z1 deleted the feat/659 branch April 30, 2025 05:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

⚖️ 재상 세훈 전지적 세훈 시점 🚧 [BUILD] 빌드 업무 수정, 패키지 매니저 수정합니다. 🍯 [FEAT] 새로운 기능을 개발합니다. ♻️ [REFACTOR] 기존 코드를 리팩토링합니다.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants