컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
check_circle
Compose 단계
keyboard_arrow_down
keyboard_arrow_up
ondemand_video
동영상
Jetpack Compose에서 데이터를 UI로 변환하는 방법을 알아봅니다.
check_circle
Compose UI 설계
keyboard_arrow_down
keyboard_arrow_up
subject
기사
이 가이드에서는 Compose에서 단방향 데이터 흐름 패턴을 구현하는 방법, 이벤트 및 상태 홀더를 구현하는 방법, Compose에서 ViewModel을 사용하는 방법을 중점적으로 설명합니다.
check_circle
Compose 상태
keyboard_arrow_down
keyboard_arrow_up
ondemand_video
동영상
Compose의 상태 모델과 컴포지션, 상태를 끌어올리고 상태 홀더를 만들어야 하거나 AAC ViewModel을 사용해야 하는 경우, Compose에서 이러한 변경사항을 추적할 수 있도록 컴포지션 외부에서 안전하게 상태를 변경하는 방법을 알아봅니다.
check_circle
상태를 끌어올릴 위치
keyboard_arrow_down
keyboard_arrow_up
ondemand_video
동영상
Jetpack Compose에서 상태를 끌어올리는 방법과 위치를 알아봅니다.
check_circle
고급 상태 및 부수 효과
keyboard_arrow_down
keyboard_arrow_up
emoji_objects
Codelab
Jetpack Compose의 상태 및 부수 효과 API와 관련된 고급 개념을 알아봅니다. 복잡한 스테이트풀(Stateful) 컴포저블의 상태 홀더를 만드는 방법, Compose 코드에서 코루틴을 만들고 정지 함수를 호출하는 방법, 다양한 사용 사례의 부수 효과를 트리거하는 방법을 알아봅니다.
check_circle
탐색 권장사항
keyboard_arrow_down
keyboard_arrow_up
ondemand_video
동영상
Navigation Compose를 사용하여 모든 탐색 호출에서 유형 안전성을 유지하는 방식으로 여러 모듈에서 탐색 그래프를 확장하기 위한 권장사항을 알아봅니다.
check_circle
탐색
keyboard_arrow_down
keyboard_arrow_up
emoji_objects
Codelab
Compose의 Jetpack Navigation 라이브러리의 사용 방법과 애플리케이션 내에서 탐색 및 인수로 탐색하는 방법, 그리고 딥 링크를 지원하고 탐색을 테스트하는 방법을 알아봅니다.
check_circle
상태 홀더 및 상태 생성
keyboard_arrow_down
keyboard_arrow_up
ondemand_video
동영상
선택사항
Compose는 화면에 애플리케이션 데이터를 표시합니다. 하지만 정확히 어떻게 할까요? 이 동영상에서는 UI 상태 생성 파이프라인과 UI 복잡성을 관리하는 상태 홀더를 자세히 살펴봅니다. UI와 비즈니스 로직, ViewModel과 일반 상태 홀더 클래스, 상태와 이벤트의 차이점 등을 알아보세요. 기능과 사용 시기, 사용 방법을 알아보세요.
건너뛰기
퀴즈
학습한 내용을 테스트하고 아키텍처 및 상태 배지를 받으세요.
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"필요한 정보가 없음"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"너무 복잡함/단계 수가 너무 많음"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"오래됨"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"번역 문제"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"샘플/코드 문제"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"기타"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"이해하기 쉬움"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"문제가 해결됨"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"기타"
}]
{}
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["필요한 정보가 없음","missingTheInformationINeed","thumb-down"],["너무 복잡함/단계 수가 너무 많음","tooComplicatedTooManySteps","thumb-down"],["오래됨","outOfDate","thumb-down"],["번역 문제","translationIssue","thumb-down"],["샘플/코드 문제","samplesCodeIssue","thumb-down"],["기타","otherDown","thumb-down"]],[]]