1. Compose Hot Reload의 5단계 파이프라인 — 실기기에서 50ms 즉각 반영
URL: https://hotswan.dev/blog/compose-hot-reload
요약: Compose Hot Reload가 실제 안드로이드 기기에서 어떻게 동작하는지 내부 파이프라인을 상세히 분석한 글입니다. 파이프라인은 5단계로 구성됩니다: ① 파일 감지(File Detection) — 파일 시스템 이벤트로 변경 감지, ② 증분 컴파일(Incremental Compile) — 변경된 파일만 재컴파일, ③ 클래스 추출(Class Extraction) — 수정된 클래스 바이트코드 추출, ④ 인메모리 스왑(In-Memory Swap) — 실행 중인 JVM에 literal patching으로 클래스 교체, ⑤ 타겟 리컴포지션(Targeted Recomposition) — 변경된 컴포저블만 선택적으로 재구성. 전체 사이클이 약 50ms 안에 완료되며 ViewModel 상태 등 런타임 상태가 보존됩니다. 앱 재시작 없이 즉각적인 UI 이터레이션이 가능한 원리를 이해하는 데 유용한 레퍼런스입니다.
2. Kotlin 2.4.0 신규 컬렉션 확장 함수 — isSorted* 시리즈로 정렬 검증 간소화
요약: Kotlin 2.4.0에서 컬렉션 정렬 검증을 위한 확장 함수 5종이 추가됩니다: isSorted()(오름차순), isSortedDescending()(내림차순), isSortedWith(comparator)(커스텀 Comparator), isSortedBy { selector }(속성 선택자), isSortedByDescending { selector }(역순 속성 선택자). 모두 Comparable을 구현한 요소에 적용되며, 첫 번째 순서 위반 쌍을 발견하면 즉시 종료(short-circuit)합니다. 기존에는 list == list.sorted()나 수동 루프를 사용해야 했지만 이제 한 줄로 가독성 있게 검증할 수 있습니다. 단위 테스트, 데이터 파이프라인 검증, 전제조건 체크 등 다양한 곳에서 유용하게 활용할 수 있습니다.
3. AppFunctions API — AI 에이전트가 앱 기능을 직접 호출하는 새 패러다임 (Android 16)
URL: https://dev.to/tkuenneth/agentic-interaction-using-appfunctions-m8k
요약: Google이 Android 16(API 36)에서 공개한 AppFunctions는 AI 에이전트(예: Gemini)가 앱을 포그라운드로 열지 않고도 앱의 기능을 직접 호출할 수 있게 하는 프레임워크입니다. 개발자는 @AppFunction 어노테이션으로 Kotlin 메서드를 표시하면, KSP 컴파일러 플러그인이 처리하고 AppSearch가 온디바이스 인덱싱을 자동으로 수행합니다. 시스템 진입점으로 PlatformAppFunctionService가 매니페스트에 자동 병합됩니다. 예를 들어 앱이 두 앱을 분할 화면으로 여는 기능을 노출하면, "연락처와 시계를 앱 페어로 만들어줘"라는 음성 명령만으로 에이전트가 해당 함수를 패키지명 파라미터와 함께 직접 호출합니다. App Actions, Android Slices 등 과거 실패한 시도들의 후계로, 현재 early/beta 단계입니다.