Open
Conversation
added 2 commits
March 5, 2026 13:47
vvan2
reviewed
Mar 5, 2026
seungjae708
approved these changes
Mar 9, 2026
Collaborator
seungjae708
left a comment
There was a problem hiding this comment.
무거운 라이브러리를 대체를 했는데도 오히려 코드가 양이 적어서 신기하네요
지금껏 사이드 이펙트에 대해서 역할을 분리해서 생각은 크게 안해본 것 같은데, 관심사 분리에 대해 깊게 고민하신 게 느껴집니다. 고생 많으셨어요!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
ISSUE
❗ WORK DESCRIPTION
authState가 기존 parent에서만 사용되어 불필요하게 의존되던 부분을 공통에서 사용되도록 분리하고 auth parent는 따로 생성하였습니다카카오 로그인 완료 후 아이와 연동되어있는지 여부 후 부모 정보 local에 저장을 담당하던 ViewModel의 함수가 비대하다고 생각하여 중요 비즈니스 로직이라 생각하여 usecase로 분리하였습니다, 이로 인해 ViewModel에서 판단하는 로직이 줄어들고 더 명확하고 가독성있게 판별가능하게 되었습니다
core에 app 디렉토리를 만들었습니다, 현재 app 관련 기능인 앱 재시작 부분이 들어가 있습니다 만약 앱 재시작 기능이 필요하다고 생각한다면
AppRestarter를 사용해주시면되겠습니다.KieroTextAction이 색상까지 변경할 수 있도록 개선되었습니다, 현재는 같은 파일에 enum 으로 색상을 지정할 수 있도록 만들어 두었는데 더 많은 색상이 추가된다면 해당 enum을 변경해주시면 좋을 것 같습니다!또한
enum KieroTextColor는 현재 해당 TextAction에서만 사용되기 때문에 같은 파일에 두었습니다. 두는 이유는 응집도 때문입니다코틀린에서는 응집도가 높은 연관된 개념들을 하나의 파일에 모아두는 것을 권장합니다
오픈소스 라이브러리 표시용 라이브러리인 mikepenz님의 라이브러리를 사용하여
오픈 소스를 명시했습니다!
기존 안드로이드에서 제공하는 친구는 많이 아프다고 하더라구요
기존보다 모든 무거운 작업을 빌드 시점에서 처리하여 런타임 오버헤드를 없애
앱에서 표기 시에는 가벼운 작업만 수행할 수 있다고 하네요잉
추가적으로 개선되면서 필요없어진 파라미터와 파일 등이 제거되었습니다
📢 TO REVIEWERS
추가적으로 이전에는
processphoenix같은 라이브러리를 사용하여 앱 재시작을 하였으나대 황 갓 민 재 님의 아티클을 통해 개선하였습니다 https://angrypodo.tistory.com/32
댓글까지 확인하시면 좋은데요 (제가 남긴 댓글입니다 키하하..)
저는 관심사 분리로 route - screen 패턴으로 나눴음에도 불구하고 route는 여전히 ui 프레임워크와 밀접하게 연관이 있다고 생각해요
그렇기에 sideeffect의 연관 역시 toast, snackbar, dialog 등등 Ui SideEffect와 비즈니스, 시스템의 SideEffect로 나눠서 생각했어요
따라서 비즈니스 로직의 결론을 짓는 ViewModel에서 앱 재시작을 수행하도록 했습니다!
각 방향성이 존재하는데 여러분의 생각이 궁금하네요