https://developer.android.com/compose
Jetpack Compose UI App Development Toolkit - Android Developers
Jetpack Compose is Android's recommended modern toolkit for building native UI. It simplifies and accelerates UI development on Android. Quickly bring your app to life with less code, powerful tools, and intuitive Kotlin APIs.
developer.android.com
안드로이드 메리 프로젝트를 하면서 사실 제일 많이 배우고 유용하다고
느낀 라이브러리가 바로 데이터 바인딩이다.
보통 데이터 바인딩을 쓰지 않는다고 하면, xml에 선언한 view들의 id를 가져와
Fragment에서 사용함으로 Fragment에서 코드의 양이 방대하게 늘어나게 된다.
그렇다면 가독성도 떨어지고, 유지보수 하려면 여간 귀찮은 게 한두 가지가 아니다...
메리 플젝을 하면서 팀원분의 도움으로 데이터 바인딩을 통해 코드를 감소시켰지만,
이 데이터 바인딩도 조금 치명적인 단점이 있다.
XML과 Fragment를 왔다 갔다 하면서 코드를 파악해야 했고,
만약 viewModel의 변수명을 바꾸고 싶다면 xml까지 들어가서 바뀐 변수명을
일일이 트래킹 하는 게여간 귀찮은 게 아니었다.
하지만 Compose를 회사에서 직접 사용하고 쓰다 보니
이제는 Xml로 View를 짜는 것이 얼마나 한심하고 쓸데없는 짓임을 되짚어 보게 된다.
사실 Compose처럼 UI 선언형 방식은 안드로이드뿐만 아니라 ios, flutter, react native 등
다른 곳들에서는 다양한 듯이 사용하고 있다.
왜 대체 안드로이드는 그 쓸데없는 xml 방식으로 UI를 만들었는지 참 의문이 들게 된다.
Jetpack Compose는 회사에 들어가서 처음으로 접한 UI였는데
처음 사용할 때는 여간 어색한 게 한두 가지가 아니었다.
하지만 Compose로 2번 정도 프로젝트를 진행하자
Compose는 xml 파일을 별도로 생성하지 않아도되기 때문에 파일 크기가 줄어들고,
재사용성이 좋다는 장점이 있다.
'프로젝트' 카테고리의 다른 글
AnimatedFloatAsState로 애니메이션 구현하기[3] (0) | 2025.04.18 |
---|---|
AnimatedFloatAsState로 애니메이션 구현하기[2] (0) | 2025.04.08 |
AnimatedFloatAsState로 애니메이션 구현하기[1] (0) | 2025.04.01 |
Android Jetpack Compose 후기 (2) (0) | 2025.03.24 |