목록Compose (4)
Shunz Android Dev Note
컴포즈에서 Stable 하다는 개념은 매우 중요합니다. 그 이유중 하나는 Smart Recomposition 때문입니다. 이는 리컴포지션을 진행할 때, 모든 입력값이 Stable이고 같은 값이라면 스킵하게 된다는 것을 의미합니다. 즉, 바뀐게 없으면 화면을 다시 그리지 않겠다는 의미로 UI 렌더링을 조금 더 효율적으로 하겠다는걸 나타냅니다. 하지만, 값이 바뀌지 않았다는 확신이 없다면 무조건 재구성(재렌더링)을 진행하게 됩니다. Stable, Unstable 이란? 컴포즈는 타입을 stable, unstable로 구분을 합니다. 타입이 immutable이면 stable하다는 것을 의미하는데 이는 리컴포즈할때 컴포즈가 값이 변경 되었는지를 알아챌 수 있다는 것입니다. 반면, 타입이 unstable 하다는 ..
Jetpack Compose는 안드로이드에서 UI 개발을 훨씬 더 용이하게 만들어주었지만, 더 나은 성능을 위해 UI 효과를 제대로 관리하는 방법을 이해하는 것은 여전히 중요합니다. 이 포스트에서는, UI 효과를 효과적으로 관리하는 데 도움이 되는 세 가지 중요한 컴포저블 함수인 SideEffect, LaunchedEffect, DisposableEffect에 대해 알아보겠습니다. 왜 Side-effects(이하 부수효과) 인가? Jetpack Compose에서 부수효과의 목적은 제어되고 예측 가능한 방식으로 컴포저블 함수 밖에서 앱의 상태를 변경하는 non-UI 관련 작업을 실행할 수 있도록 하는 것입니다. 데이터베이스를 업데이트하거나 네트워크 요청을 하는 등의 부수효과는 UI 렌더링 로직과 별도로 유..
2부로 구성된 이 블로그 시리즈에서는 Jetpack Compose 텍스트 필드의 과거, 현재, 미래에 대하여 자세히 다룹니다. 새로 도입된 BasicTextField2에 대해서 알아보세요. Compose 텍스트 팀은 차세대 TextField API를 개발하고 있습니다. 여러분들은 지금 당장 사용(시험)해 볼 수 있습니다. BasicTextField2는 text2 패키지의 foundation 1.6.0 알파버전에서 이용 가능합니다. 1편 요약 1편에서는 다음 방법을 다루었습니다. 상태 동기화 문제를 방지하기 위해 새로운 API로 상태를 관리 데코레이터와 라인 제한을 포함한 기본 스타일링 상태를 관찰하고 비즈니스 규칙을 적용할 때 일반적인 시나리오를 해결 TextFieldBuffer를 사용하여 프로그래밍 방..
2부로 구성된 이 게시글은 Jetpack Compose에서 제공하는 TextField에 대하여 자세히 다룹니다. 과거, 현재 그리고 미래에 어떻게 변화가 되는지 전반적으로 다루도록 합니다. 새롭게 도입된 BasicTextField2에 대하여 알아보도록 해봐요 :-) 요약 구글의 Compose F/W팀에 속한 Text 관련 개발 팀은 차세대 TextField API를 개발하고 있습니다. 지금 당장 사용 해볼 수 있는데요. BasicTextField2는 text2 패키지에 속해 있는 최신 Foundation 1.6.0 알파 버전으로 이용이 가능합니다. 2부 게시글의 마지막에 명시한 다양한 채널을 통해서 개발팀에게 피드백을 남겨주세요. 경고 Compose는 아래와 같은 레이어로 빌드가 됩니다. Material..