KeyFlow LogoKEYLOW
KeyFlow Logo
홈트렌딩시리즈
도구와 정보
도구 및 앱소개
내 계정
최근 읽은 글
@keyflow 공식피드백 Discord
BETA v2v2026.08.17
Compose ui 모듈은 왜 ViewModel까지 가져야 할까 | Taehwan kwon (theo) | KeyFlow
KeyFlow LogoKEYLOW
BETA v2v2026.08.17
Compose ui 모듈은 왜 ViewModel까지 가져야 할까
100+ reads

Compose ui 모듈은 왜 ViewModel까지 가져야 할까

Taehwan kwon (theo)Taehwan kwon (theo)
발행 5 days ago
6 min read

ViewModel과 UI 로직을 어디에 두어야 모듈 간 의존성 문제를 해결하고 독립적인 테스트 환경을 구축할 수 있을까요?

Android 멀티 모듈 프로젝트의 의존성 관리와 아키텍처 설계에 고민이 많은 안드로이드 개발자
·ui 모듈은 단순히 컴포저블의 저장소가 아닌, Navigation Key를 받아 ViewModel과 상태를 연결하고 화면을 구동하는 완전한 feature 단위여야 합니다.
·ViewModel과 Route를 ui 모듈에 배치하면 Compose Host가 `impl` 모듈을 import하지 않고도 화면을 제어할 수 있어 의존성 역전과 모듈 독립성이 확보됩니다.
·화면 구성 요소(Screen, ViewModel, Route 등)는 동일한 feature 화면이라는 목적하에 관리되며, Activity는 필요 시점에 `impl` 모듈에서 동일한 `Route`를 호출하는 역할만 수행합니다.
SeriesPart 7 of 7

Android Compose Architecture

View All
Previous
Activity가 있는 Android feature는 어떻게 나눠야 할까
End
Series Complete
손엔 맥주, 일은 AI가! Agent Field Trip : Incheon
Promotion

손엔 맥주, 일은 AI가! Agent Field Trip : Incheon

참여만 해도 즐거움이 두 배! 당신의 행운을 시험하고 지금 바로 준비된 특급 경품과 깜짝 당첨의 주인공이 되어보세요.

by @taehwandev
Taehwan kwon (theo)

Taehwan kwon (theo)

@taehwandev

[안녕하세요, 태환입니다] 글쓰기 플랫폼 KeyFlow의 운영과 개발을 총괄하고 있는 태환입니다. 사용자가 생각에 집중할 수 있는 환경을 만들기 위해 플랫폼인 키플로우 전체의 기획부터 배포, 관리를 리딩하고 있습니다.

[경험 및 전문성]

  • KeyFlow Management: 서비스의 전반적인 운영을 책임지고 있습니다.
  • Mobile Engineering: 안드로이드와 iOS 플랫폼 모두에서 안정적이고 매끄러운 사용자 경험을 구현합니다. 기기의 특성에 최적화된 에디터와 기능을 개발하는 데 강점이 있습니다.
  • Openness & Stability: 플랫폼의 개방성을 확대하면서도, 시스템의 안정성을 놓치지 않는 균형 잡힌 개발 철학을 추구합니다.

[목표] 단순한 기능 구현을 넘어, 전 세계 사용자가 언어의 장벽 없이 소통할 수 있는 글로벌 플랫폼으로 KeyFlow를 성장시키는 것이 저의 목표입니다.

기술 스택 요약 (Tech Summary)

  • Mobile: Android (Kotlin/Java), iOS (Swift)
  • Highlight: GitHub Gist Integration, AI Language Detection, Cross-platform Optimization
kotlin
data class User(  val name: String = "taehwan",  val bio: String = "Android, iOS",  val nickName: String = "Theo",)

Read Next

Activity가 있는 Android feature는 어떻게 나눠야 할까
2026-08-30

Activity가 있는 Android feature는 어떻게 나눠야 할까

taehwandev
taehwandev
1부 - 컴포즈에 사용할 Composable Architecture 설명(리엑트?)
2025-02-02

1부 - 컴포즈에 사용할 Composable Architecture 설명(리엑트?)

taehwandev
taehwandev
데이터 흐름(Data flow)을 이해해 보는 데 있어 필요한 것은? 짝퉁 개발자처럼 논하기
Android 2024-11-09

데이터 흐름(Data flow)을 이해해 보는 데 있어 필요한 것은? 짝퉁 개발자처럼 논하기

taehwandev
taehwandev