Skip to content

Conversation

@codedbyminjae
Copy link

📌 몇 주차 워크북인가요?

  • Week08

✨ 이번 주에 작업한 내용

  • 회원가입(SignUpActivity) & 로그인(LoginActivity) UI 구현
  • RoomDB 기반 User 데이터 저장 기능 개발
  • 로그인 시 SharedPreferences를 활용한 사용자 상태 관리 구현
  • AlbumFragment에서 좋아요(isLike) 토글 기능 구현
  • 좋아요한 앨범만 LockerFragment에서 조회되도록 연결
  • BottomNavigationView로 홈/둘러보기/검색/보관함 화면 전환 구조 설정
  • 앱 실행 시 기본 더미 앨범/노래 데이터 초기화 로직 작성

🙋 리뷰 요청/확인 받고 싶은 부분

  • 현재 DB 구조(Song, Album, User, Like Entity) 구성 방식이 적절한지 피드백 받고 싶습니다.
  • 둘러보기(LookFragment) / 보관함(LockerFragment) UI 구성과정에서 현재까지 udemy강의와의 차이점이 있는데 이것이 맞는건지 아니면 따로 구현을 해봐야하는지 조언 부탁드립니다.
  • 전체 프로젝트를 원본 코드 기반으로 리셋한 흐름이 적절했는지 검토 요청드립니다.

✅ 체크리스트

  • weekN/ 폴더 안에 과제 정리 완료
  • PR 생성 시 base = 조직 내 본인 브랜치, compare = 내 Fork main 브랜치로 설정했는지 확인
  • PR 제목에 [WeekN] 닉네임/이름 미션 제출 규칙 맞게 작성

@eldeoddt
Copy link

8주차 피드백 완료 ✅
수고하셨습니다 🙂 👍

🙋 리뷰 요청 / 확인 받고 싶은 부분

  • DB 구조 전반 깔끔함. 학습용으로 충분하고 실무 기준으로 Like 복합 PK 추천 (앨범당 중복 좋아요 방지)
  • Album–Song 관계 구조 적절. 추후 @Relation 적용 시 쿼리 단순화 가능
  • Udemy 내용이랑 차이 있지만 지금 구조도 충분히 좋아서 지금 그대로 해주셔도 무방함

<SignUpActivity>

👍 Room으로 회원가입 로직 완성
💙 Coroutine으로 insert 비동기 처리 추천 (room db 사용 시에만)
💙 getUserByEmail()로 중복 검증 쿼리 분리하면 명확함

<LoginActivity>

👍 SharedPreferences로 로그인 상태 관리 좋음
💙 로그인 성공 후 finish() 추가로 뒤로가기 방지
💙 FLAG_ACTIVITY_CLEAR_TASK 플래그 변수 세팅으로 로그인 화면이 스택에서 제거되도록 처리 추천

<AlbumFragment>

👍 isLike 토글 처리 구현
💙 DB 직접 접근 대신 ViewModel→Repository 분리하면 확장성 증가
💙 UI 변경 시 DB 반영 후 옵저버로 갱신 구조 권장

<LockerFragment>

👍 좋아요 필터링 구현
💙 LiveData/Flow로 자동 UI 갱신 구조 고려

<UserDao> / <User>

👍 기본 구조 완성도 높음
💙 onConflict = REPLACE 옵션 추가 -> 이메일 중복시 오류 발생x

@codedbyminjae
Copy link
Author

감사합니다!

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.

2 participants