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

홈 화면 Post 캐싱 추가 #242

Merged
merged 4 commits into from
Oct 2, 2024
Merged

홈 화면 Post 캐싱 추가 #242

merged 4 commits into from
Oct 2, 2024

Conversation

fbghgus123
Copy link
Collaborator

개요

이슈 링크 혹은 PR 내용 요약

  • 홈 화면 Post DB 캐싱 추가

작업 내용

실제 작업 내용

  • 홈 화면 로딩 UI 구현
  • Post 가져올 때 DB 저장 로직 추가
  • Home 화면 OnCreate에서 캐싱된 데이터 먼저 가져오는 부분 추가

시연 화면 (option)

실행 스크린샷 혹은 영상 첨부

REC-20241001223736.mp4

To Reviers

리뷰어들에게 전할 말

image
홈 화면에서 Posts 가져오는 로직을 그림으로 그렸습니다.
그림에 대한 간단한 설명을 드리자면,

  • 시작점은 유저 이벤트이고,
  • 빨간색은 네트워크에서 가져오는 데이터,
  • 초록색은 메모리 캐싱,
  • 파란색은 DB관련 캐싱이며, 이번 PR에 추가된 내용입니다.

이번 PR 에서는 스크롤 복구는 구현하지 않았습니다 ...

Close

close #

Comment on lines +566 to +572
val posts = getLocalPostsUseCase(LOCAL_CACHED_POSTS_COUNT)

if (state.folderList.isEmpty()) {
initFolderList()
}

reduce { state.copy(postList = posts.items.toUIModel(state.folderList)) }
Copy link
Collaborator

Choose a reason for hiding this comment

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

앱 처음 킬 때 이러케 대면 로컬도 캐싱된 리스트가 있고 state는 초기화 상태라서 initFolderList도 불리지않낭?
로컬, 리모트 둘다 부르는게 목적이지?

맞다면 reduce에 캐싱된 데이터에 리모트 데이터를 덮어쓰는건가 ?? 맞나?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

@Ahn-seokjoo
folderList는 둘 다 필요한데, 둘 중 어느 것이 먼저 불릴지 모르기 때문에 둘다 넣음.
캐싱된 데이터에 리모트 데이터 덮어 쓰는건 맞슴당

Copy link
Member

@ddyeon ddyeon left a comment

Choose a reason for hiding this comment

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

고생 고생 했도라~

@fbghgus123 fbghgus123 merged commit 454fdfc into develop Oct 2, 2024
3 checks passed
@fbghgus123 fbghgus123 deleted the feature/home_cache branch October 2, 2024 06:20
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.

3 participants