Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- Coroutine
- MiTweet
- Coroutines
- pandas
- 코드포스
- TEST
- 코루틴
- Codeforces
- 암호학
- Gradle
- 쿠링
- GitHub
- relay
- AWS
- Rxjava
- livedata
- boj
- architecture
- Compose
- textfield
- android
- Python
- activity
- Hilt
- MyVoca
- Kotlin
- androidStudio
- 프로그래머스
- 백준
- ProGuard
Archives
- Today
- Total
이동식 저장소
Compose의 Stability에 관하여 본문
정말 좋은 글이다. 일독을 권한다.
요약하면
- Composable의 모든 매개변수가 immutable 또는 stable하다면 해당 composable은 skip될 수 있다.
- 어떤 composable이 skip되지 않아 성능상의 문제가 발생한다면, 먼저 unstable한 매개변수가 있는지 확인하자.
- 그래도 잘 모르겠다면 Compose compiler의 보고서를 참고해 보자.
- ``List``, ``Set`` 등의 collection 클래스는 항상 unstable하다. Kotlinx의 immutable collection을 사용하거나 해당 클래스에 ``@Immutable`` 또는 ``@Stable`` 어노테이션을 붙이자.
- Compose compiler가 없는 모듈에서 작성된 클래스는 항상 unstable하다고 간주된다. 해당 모듈에 compose compiler를 추가한 후 어노테이션을 붙이던가, UI 모듈에서 해당 클래스를 감싸는 wrapper 클래스를 작성하자.
- 물론 모든 composable이 skip 가능할 필요는 없다. 거의 recompose되지 않는 composable을 억지로 skippable하게 만들 필요는 없다.
``List``가 unstable이구나.. 화면에서 매우 큰 리스트를 사용한다면 성능 이슈가 발생할 수도?
'Primary > Compose' 카테고리의 다른 글
[Compose] 반응형 앱 구현 실전 (4) | 2022.10.20 |
---|---|
[Compose] Movable Content (0) | 2022.08.13 |
Compose가 UI를 그리는 과정 (0) | 2022.08.13 |
Compose Example - sunflower (1) | 2022.08.02 |
[Compose] 커스텀 뷰 - 세로 방향 불규칙 그리드 만들기 (0) | 2022.02.09 |
Comments