ViewModel
-
코틀린 코루틴 핵심 정리(개념부터 예제까지)-고슴도치 군단카테고리 없음 2026. 5. 8. 17:00
코루틴 개요코틀린 코루틴(Coroutine)은 비동기 코드를 마치 동기 코드처럼 순차적으로 작성할 수 있게 해주는 도구임기존 안드로이드 개발에서는 AsyncTask나 RxJava로 비동기 처리를 해왔지만, 콜백이 중첩되면서 코드가 복잡해지는 문제가 있었음코루틴을 사용하면 네트워크 요청, DB 조회 등 시간이 걸리는 작업을 간결하고 읽기 쉬운 코드로 처리할 수 있음구글은 2019년 이후 안드로이드 공식 문서에서 AsyncTask 대신 코루틴 사용을 권장하고 있으며, 현재 대부분의 신규 안드로이드 프로젝트에서 코루틴이 기본으로 사용됨핵심 개념 정리코루틴을 이해하려면 세 가지 핵심 개념을 먼저 파악해야 함CoroutineScope는 코루틴이 실행되는 범위를 정의하며, 스코프가 종료되면 그 안의 코루틴도 함께 ..
-
Jetpack Compose 상태 관리 한눈에 보기 — State와 StateFlow 제대로 알기카테고리 없음 2026. 3. 27. 01:11
왜 상태 관리가 중요한가안드로이드 개발에서 Jetpack Compose가 주류가 되면서, 기존 XML 기반 View 시스템과는 전혀 다른 상태 관리 방식이 요구되고 있습니다.Compose는 선언형 UI 패러다임을 따르기 때문에, 화면을 직접 조작하는 대신 상태(State)를 변경해 UI를 리컴포지션(recomposition)시킵니다.상태 관리를 제대로 이해하지 못하면 불필요한 리컴포지션, 메모리 누수, 예측 불가능한 UI 동작으로 이어지기 때문에 Compose를 다루는 개발자라면 반드시 숙지해야 할 핵심 개념입니다.remember와 mutableStateOf — 가장 기본적인 상태 선언Compose에서 상태를 선언하는 가장 기본적인 방법은 remember와 mutableStateOf를 조합하는 것입니다...
-
Android DataBinding + Hyperion 세팅 완벽 가이드 — 실시간 UI 디버깅카테고리 없음 2026. 3. 23. 00:19
Hyperion이란?Hyperion은 WillowTree가 만든 Android 디버그 전용 UI 인스펙터 라이브러리입니다.앱을 실행한 상태에서 View의 속성(텍스트, 색상, 폰트 크기, 여백 등)을 실시간으로 확인할 수 있어 디자인 검수나 DataBinding 결과값 확인에 매우 유용합니다.별도의 오버레이 패널을 앱 위에 띄우는 방식이라 기존 코드에 거의 영향을 주지 않으며, Release 빌드에서는 완전히 제거됩니다.왜 DataBinding 환경에 Hyperion이 필요한가?DataBinding을 사용하면 XML에서 ViewModel의 LiveData나 ObservableField를 직접 바인딩하게 됩니다.하지만 바인딩된 값이 실제로 View에 어떻게 반영되었는지 확인하려면 매번 로그를 찍거나 Lay..