5_미래

topics
types 이론
tags
#android #compose #modern
references

Android 개발의 미래

Android 개발의 현대적인 방향성을 정리한다.

Jetpack Compose

기존 XML 기반 UI에서 선언형 UI로 전환하는 흐름이다.

XML vs Compose

구분 XML Compose
방식 명령형 선언형
언어 XML + Kotlin Kotlin only
상태 관리 수동 자동 리컴포지션
프리뷰 제한적 실시간

Compose 예시

@Composable
fun Greeting(name: String) {
    Text(text = "Hello, $name!")
}

@Composable
fun UserCard(user: User) {
    Column(
        modifier = Modifier
            .padding(16.dp)
            .fillMaxWidth()
    ) {
        Text(
            text = user.name,
            style = MaterialTheme.typography.h6
        )
        Text(
            text = user.email,
            style = MaterialTheme.typography.body2
        )
    }
}

왜 Compose를 쓰냐면: Flutter처럼 선언형 UI라 코드가 직관적이다. XML과 Kotlin을 왔다갔다할 필요가 없다.

Modern Android Development (MAD)

Google이 권장하는 현대적인 Android 개발 방식이다.

구분 권장 기술
UI Jetpack Compose
아키텍처 MVVM + Clean Architecture
비동기 Kotlin Coroutines + Flow
DI Hilt
네트워킹 Retrofit + OkHttp
로컬 DB Room

Flutter와 비교

구분 Native Android Flutter
언어 Kotlin Dart
UI 프레임워크 Compose Flutter Widget
크로스 플랫폼 Android only iOS + Android + Web
성능 최상 좋음
학습 곡선 높음 중간

언제 Native를 쓰냐면: 플랫폼 특화 기능(카메라, 센서, 백그라운드)이 많거나, 최상의 성능이 필요할 때. 그 외에는 Flutter도 좋은 선택이다.

관련 문서