핵심으로 배우는 Jetpack Compose

최희창·2023년 6월 18일
0

Jetpack Compose

목록 보기
9/9

Ch 19 Composable 함수 개요

  • 표준 코틀린 함수들과 달리 Composable 함수는 값을 반환하지 않는다. 대신 Compose Runtime에 렌더링되는 UI 유닛을 반환한다.

  • Composable 함수는 상태값 저장 여부에 따라 상태 / 비상태 Composable로 분류된다.

  • 내장 Composable은 Layout, Foundation, Material Design 컴포넌트로 분류된다.

Ch20. Compose 상태와 재구성

  • 상태 : 시간에 따라 변경될 수 있는 값
  • Composable 함수는 데이터를 받고, 해당 데이터를 이용해 UI 레이아웃 영역을 만든다. 그리고 Compose 런타임에서 해당 요소들을 렌더링 한다.
  • 부모 Composable의 상태값 변화가 모든 자식 Composable에 반영되며, 해당 상태가 전달된다는 것을 의미한다. 이를 재구성(Recomposition)이라 한다.
  • 상태 값이 변경될 때 마다 UI의 전체 Composable 트리를 재구성하면 UI의 렌더링과 업데이트에 있어 매우 비효율적이게 된다. 그래서 Compose는 해당 상태 변화에 직접 영향을 받는 함수들만 재구성하는 지능적 재구성 기법을 이용해 오버헤드를 피한다.
  • Compose는 단방향 데이터 흐름 접근 방식이다. Composable의 State는 자식 Composable 함수들에 의해 직접 변경되어서는 안 된다는 개념이다.
  • StateHoisting

Ch21. CompositionLocal

  • staticCompositionLocalOf() : 자주 변경되지 않는 상태값을 저장할 때
  • compositionLocalOf() : 현재 상태에 접근하는 컴포저블에 대해서만 재구성을 수행할 때
profile
heec.choi

0개의 댓글