Skip to content

7주차 미션 / 안드로이드 2조 서아영#26

Open
AyoungSe0 wants to merge 3 commits into
Konkuk-KUIT:AyoungSe0from
AyoungSe0:week7
Open

7주차 미션 / 안드로이드 2조 서아영#26
AyoungSe0 wants to merge 3 commits into
Konkuk-KUIT:AyoungSe0from
AyoungSe0:week7

Conversation

@AyoungSe0

@AyoungSe0 AyoungSe0 commented Nov 14, 2025

Copy link
Copy Markdown
  1. 미션 내용
  • 수동 주입(App Container) 구현
  • Repository 패턴 사용
  • ViewModel 분리
    • PostEditViewModel
    • PostDetailViewModel (삭제까지 같이)
    • PostCreateViewModel
  • UiState 구현
  • PostViewModel 삭제
  • PostListViewModel의 refresh 함수를 메인화면에서 sideEffect로 항상 실행시키기

PostListViewModel의 refresh 함수를 메인화면에서 sideEffect로 항상 실행시키는 것 제외하고 모두 구현하였습니다.(이 부분은 파트장님께 확인 받았습니다...!)

  1. 변경 사항
  • PostRepository 에는 getPosts, getPostDetail, createPost, updatePost, deletePost, uploadImage가 있습니다.
  • UiState는 Create, Detail, Edit 각각을 별개의 파일로 만들어서 구현했습니다.
  • NavGraph에서 각 Screen에 PostViewModelFactory를 활용해 알맞은 뷰모델을 주입해 주었습니다.
  1. 기타
  • 이미지 업로드 부분을 저렇게 구현하는 게 맞는지 잘 모르겠습니다. 만들다 보니 같은 코드가 두 번 들어가서 저렇게 하는 게 맞다면 중복된 코드는 따로 분리해서 해도 좋을 것 같다고 생각했습니다.
  • UI 갱신 부분 제외하고는 작동됐는데, 마지막에 앱 실행을 못해봐서 실행 영상은 첨부하지 못했습니다.

@coderabbitai

coderabbitai Bot commented Nov 14, 2025

Copy link
Copy Markdown

Warning

Rate limit exceeded

@alswlekk has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 26 minutes and 55 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

📥 Commits

Reviewing files that changed from the base of the PR and between cf712a2 and 438a579.

📒 Files selected for processing (23)
  • .idea/deploymentTargetSelector.xml (1 hunks)
  • app/src/main/AndroidManifest.xml (1 hunks)
  • app/src/main/java/com/example/kuit6_android_api/App.kt (1 hunks)
  • app/src/main/java/com/example/kuit6_android_api/data/api/RetrofitClient.kt (1 hunks)
  • app/src/main/java/com/example/kuit6_android_api/data/di/AppContainer.kt (1 hunks)
  • app/src/main/java/com/example/kuit6_android_api/data/repository/PostRepository.kt (1 hunks)
  • app/src/main/java/com/example/kuit6_android_api/data/repository/PostRepositoryImpl.kt (1 hunks)
  • app/src/main/java/com/example/kuit6_android_api/data/service/ApiService.kt (1 hunks)
  • app/src/main/java/com/example/kuit6_android_api/ui/navigation/NavGraph.kt (6 hunks)
  • app/src/main/java/com/example/kuit6_android_api/ui/post/screen/PostCreateScreen.kt (8 hunks)
  • app/src/main/java/com/example/kuit6_android_api/ui/post/screen/PostDetailScreen.kt (6 hunks)
  • app/src/main/java/com/example/kuit6_android_api/ui/post/screen/PostEditScreen.kt (6 hunks)
  • app/src/main/java/com/example/kuit6_android_api/ui/post/screen/PostListScreen.kt (3 hunks)
  • app/src/main/java/com/example/kuit6_android_api/ui/post/state/PostCreateUiState.kt (1 hunks)
  • app/src/main/java/com/example/kuit6_android_api/ui/post/state/PostDetailUiState.kt (1 hunks)
  • app/src/main/java/com/example/kuit6_android_api/ui/post/state/PostEditUiState.kt (1 hunks)
  • app/src/main/java/com/example/kuit6_android_api/ui/post/state/PostListUiState.kt (1 hunks)
  • app/src/main/java/com/example/kuit6_android_api/ui/post/viewmodel/PostCreateViewModel.kt (1 hunks)
  • app/src/main/java/com/example/kuit6_android_api/ui/post/viewmodel/PostDetailViewModel.kt (1 hunks)
  • app/src/main/java/com/example/kuit6_android_api/ui/post/viewmodel/PostEditViewModel.kt (1 hunks)
  • app/src/main/java/com/example/kuit6_android_api/ui/post/viewmodel/PostListViewModel.kt (1 hunks)
  • app/src/main/java/com/example/kuit6_android_api/ui/post/viewmodel/PostViewModel.kt (0 hunks)
  • app/src/main/java/com/example/kuit6_android_api/ui/post/viewmodel/PostViewModelFactory.kt (1 hunks)
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@alswlekk

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

✨ Finishing touches
🧪 Generate unit tests (beta)

  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Nov 20, 2025

Copy link
Copy Markdown

@alswlekk: PR 리뷰를 시작하겠습니다. 변경사항을 검토하여 피드백을 제공하겠습니다.

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

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