본문 바로가기

Java

[Android] JetpackCompose을 사용하는 이유/Composable란

Jetpack Compose의 장점

  • 요즘 트렌드에 맞는 선언형 UI
  • 동적 콘텐츠로 높은 성능과 유연성
    • 위젯에 기본 언어 활용 가능(if문, 루프 등)
  • 지능적 재구성
    • 데이터, 이벤트의 변화가 있는 위젯만 재구성 → 높은 효율
    • 컴퓨팅 성능 및 배터리 수명 문제 해결

 

 

Composable 함수란?

데이터를 전달받고 이를 사용하여 화면에 텍스트 위젯을 렌더링하는 간단한 구성 가능한 함수

간단히 위젯을 그리기 위한 함수라고 보면 된다!

 

Composable 함수는 순서와 관계없이 실행

= 모두 독립적이어야 함.

 

첫 번째로 쓴 함수의 변경 사항이 두 번째 함수에 반영되지 않을 수 있는 문제를 조심해야 한다.

 

UI를 내보내는 Compose 함수는 UI 위젯을 구성하는 대신 원하는 화면 상태를 설명하므로 아무것도 반환할 필요가 없다.

컴포저블은 식별 가능한 데이터가 업데이트될 때마다 현재 애플리케이션 상태를 UI로 변환한다.

이렇게 업데이트되는 상태 변화가 일어나면 재구성이 실행된다.

 

 

재구성 recompose

이벤트를 앱 로직에 전달하여 앱의 상태가 변경되면 구성 가능한 함수가 새 데이터와 함께 다시 호출되어 UI 요소가 다시 그려지는 과정

 

이렇게 이름에도 있듯이 JetPack Compose는 Compose를 중심으로 구성된다!